
答案1
A堆疊溢位答案展示如何在 Powershell 中完成此操作。沒有簡單的介面來添加Run as administrator
標誌,因此它需要翻轉二進位檔案中的一些位元.LNK
。
$WshShell = New-Object -comObject WScript.Shell
$Shortcut = $WshShell.CreateShortcut("$Home\Desktop\7-Zip File Manager.lnk")
$Shortcut.TargetPath = "C:\Program Files\7-Zip\7zFM.exe"
$Shortcut.Save()
$bytes = [System.IO.File]::ReadAllBytes("$Home\Desktop\7-Zip File Manager.lnk")
$bytes[0x15] = $bytes[0x15] -bor 0x20 #set byte 21 (0x15) bit 6 (0x20) ON
[System.IO.File]::WriteAllBytes("$Home\Desktop\7-Zip File Manager.lnk", $bytes)
答案2
嘗試與快捷方式JS.bat - 它可以從命令列建立一個帶有「以管理員身份運行」勾選的捷徑:
call shortcutJS.bat -linkfile "some.lnk" -target "%cd%\some.bat" -adminpermissions yes
這也會更改檔案的第 21 個位元組。更多資訊可以找到本文檔中的某處。