使用 NSIS 执行命令



我想使用 NSIS 脚本执行一些命令,但要使命令正常工作,我必须使用右键单击菜单中的"以管理员身份运行"打开命令提示符。如何使用 NSIS 脚本来做到这一点。

我正在使用

 RequestExecutionLevel admin 

以及 exec 命令,但这似乎不起作用.

RequestExecutionLevel仅在 UAC 打开时在 Vista+ 上运行,因此您还应该在运行时检查以涵盖其他情况:

Outfile RequireAdmin.exe
RequestExecutionLevel admin ;Require admin rights on NT6+ (When UAC is turned on)
!include LogicLib.nsh
Function .onInit
UserInfo::GetAccountType
pop $0
${If} $0 != "admin" ;Require admin rights on NT4+
    MessageBox mb_iconstop "Administrator rights required!"
    SetErrorLevel 740 ;ERROR_ELEVATION_REQUIRED
    Quit
${EndIf}
FunctionEnd
Page InstFile
Section
SectionEnd

最新更新