如何使用NSIS以管理员身份打开文件

时间:2012-05-25 13:57:19

标签: installer admin nsis

我正在使用安装程序脚本nsis打开一个文件,我需要以管理员身份打开它以使其正常运行,但我似乎无法弄清楚如何执行此操作。

目前我的开放代码如下所示:

FileOpen $4 "$R0" w
FileRead $4 $1
FileClose $4

它打开它但作为普通用户,我需要它作为管理员。有没有办法做到这一点??提前感谢您的帮助!

1 个答案:

答案 0 :(得分:4)

您无法在普通应用程序中以其他用户身份打开文件。如果您需要这种功能,整个安装程序可能需要to run elevated

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