在NSIS脚本中以管理员身份运行*.exe文件

在NSIS脚本中以管理员身份运行*.exe文件,nsis,Nsis,我正在尝试将exe应用程序作为NSIS安装程序脚本的一部分运行。我正在使用EXEC命令运行应用程序。应用程序运行,但不是以管理员身份运行。我的应用程序正在更改一些注册表值,因此它必须以管理员身份运行。操作系统为Win7及以上版本 Exec'$INSTDIR\bin\UserPasswordUtility.exe“$R0$R1” 我将用户名($R0)和密码($R1)作为用户输入 我已请求管理员执行级别 RequestExecutionLevel管理员 我在网上搜索。我找不到任何答案 谢谢如果您的自

我正在尝试将exe应用程序作为NSIS安装程序脚本的一部分运行。我正在使用EXEC命令运行应用程序。应用程序运行,但不是以管理员身份运行。我的应用程序正在更改一些注册表值,因此它必须以管理员身份运行。操作系统为Win7及以上版本

Exec'$INSTDIR\bin\UserPasswordUtility.exe“$R0$R1”

我将用户名($R0)和密码($R1)作为用户输入

我已请求管理员执行级别 RequestExecutionLevel管理员

我在网上搜索。我找不到任何答案


谢谢

如果您的自定义应用程序总是需要UAC提升,那么您应该在其清单中添加一个节点。在NSIS中,必须使用
ExecShell
执行需要提升的应用程序,
Exec
无法提升

如果您的应用程序通常不需要提升,但需要请求一次,则可以使用runas动词:


如果您的安装程序总是需要执行提升的应用程序,那么您可能应该在脚本中使用
requestexecutionleveladmin
为您的安装程序请求提升。

UAC打开了吗?运行安装程序时UAC是否请求提升?是的,UAC已打开。叹气,UAC在运行安装程序时是否请求提升?否,我的脚本中没有执行UAC请求提升。如果您的.nsi中有“RequestExecutionLevel admin”,则您正在请求提升!
ExecShell "runas" "$sysdir\calc.exe"