核心代码如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | @ echo off title 脚本之家 桌面快捷方式创建工具! >nul 2>&1 REG.exe query "HKU\S-1-5-19" || ( ECHO SET UAC = CreateObject^( "Shell.Application" ^) > "%TEMP%\Getadmin.vbs" ECHO UAC.ShellExecute "%~f0" , "%1" , "" , "runas" , 1 >> "%TEMP%\Getadmin.vbs" "%TEMP%\Getadmin.vbs" DEL /f /q "%TEMP%\Getadmin.vbs" 2>nul Exit /b ) set jb51name=Ditto3.lnk set jb51path=%~dp0 set jb51exec=%~dp0Ditto.exe mshta VBScript:Execute( "Set a=CreateObject(" "WScript.Shell" "):Set b=a.CreateShortcut(a.SpecialFolders(" "Desktop" ") & " "\%jb51name%" "):b.TargetPath=" "%jb51exec%" ":b.WorkingDirectory=" "%jb51path%" ":b.Save:close" ) |
参数说明
1 2 3 4 5 6 7 | >nul 2>&1 REG.exe query "HKU\S-1-5-19" || ( ECHO SET UAC = CreateObject^( "Shell.Application" ^) > "%TEMP%\Getadmin.vbs" ECHO UAC.ShellExecute "%~f0" , "%1" , "" , "runas" , 1 >> "%TEMP%\Getadmin.vbs" "%TEMP%\Getadmin.vbs" DEL /f /q "%TEMP%\Getadmin.vbs" 2>nul Exit /b ) |
上面这段是管理员权限运行自身
set jb51name=Ditto3.lnk
set jb51path=%~dp0
set jb51exec=%~dp0Ditto.exe
jb51name代表的是快捷方式名称
jb51path是路径
jb51exec是完成的exe文件路径,一般后缀是exe.
另外在bat中%~dp0表示当前目录。
其实就是通过bat为 vbs传参。
路径
效果图如下
今天脚本之家小编也稍微整理了一下知识测试没有问题。
后面大家就可以根据自己的要求修改文件了。
下面为大家分享删除快捷方式的代码
移除桌面快捷方式.bat
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | @ echo off title 脚本之家 桌面快捷方式移除工具! >nul 2>&1 REG.exe query "HKU\S-1-5-19" || ( ECHO SET UAC = CreateObject^( "Shell.Application" ^) > "%TEMP%\Getadmin.vbs" ECHO UAC.ShellExecute "%~f0" , "%1" , "" , "runas" , 1 >> "%TEMP%\Getadmin.vbs" "%TEMP%\Getadmin.vbs" DEL /f /q "%TEMP%\Getadmin.vbs" 2>nul Exit /b ) ping -n 2 127.1>nul del /f /q "%userprofile%" \Desktop\ "Ditto.lnk" del /f /q "%userprofile%" \桌面\ "Ditto.lnk" exit |
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...