自动化创建快捷方式并设置为始终以管理员权限运行,可以通过编写批处理脚本来实现。以下是一个创建.bat批处理文件快捷方式并设置为管理员运行的示例脚本:
batch
@echo off
set SCRIPT_PATH="C:\Scripts\myScript.bat"
set SHORTCUT_PATH="%USERPROFILE%\Desktop\myScript.lnk":: 创建快捷方式
echo Creating shortcut...
echo %SCRIPT_PATH% > "%TEMP%\temp.vbs"
echo Set oWS = WScript.CreateObject("WScript.Shell") >> "%TEMP%\temp.vbs"
echo sLinkFile = "%SHORTCUT_PATH%" >> "%TEMP%\temp.vbs"
echo Set oLink = oWS.CreateShortcut(sLinkFile) >> "%TEMP%\temp.vbs"
echo oLink.TargetPath = "%SCRIPT_PATH%" >> "%TEMP%\temp.vbs"
echo oLink.WorkingDirectory = "C:\Scripts" >> "%TEMP%\temp.vbs"
echo oLink.Save >> "%TEMP%\temp.vbs"
cscript /nologo "%TEMP%\temp.vbs"
del "%TEMP%\temp.vbs":: 设置快捷方式以管理员身份运行
echo Setting shortcut to run as administrator...
attrib +R "%SHORTCUT_PATH%"
powershell -Command "$wshShell = New-Object -ComObject wscript.shell;$shortcut = $wshShell.CreateShortcut('%SHORTCUT_PATH%');$shortcut.Arguments = ''; $shortcut.IconLocation = '%SCRIPT_PATH%,0';$shortcut.Save();$setAdmin = $shortcut.FullName;cmd /c 'takeown /f """ & $setAdmin & """ && icacls """ & $setAdmin & """ /grant administrators:F'"
echo Done.
注意:
- 将
SCRIPT_PATH
变量替换为你实际的脚本路径。 - 这个脚本会将快捷方式保存到用户的桌面(
%USERPROFILE%\Desktop\myScript.lnk
)。
这个批处理脚本首先创建了一个指向目标脚本的快捷方式,然后通过PowerShell命令修改该快捷方式的属性,使其始终以管理员身份运行。不过请注意,对于现代Windows系统,直接在快捷方式中设置“以管理员身份运行”可能无法通过批处理或VBS脚本完全实现,而需要手动设置。上述脚本尝试模拟这一操作,但其效果可能会受到操作系统版本和安全策略的影响。