1

インストーラー スクリプト nsis を使用してファイルを開いています。適切に実行するには管理者としてファイルを開く必要がありますが、その方法がわかりません。

現在、私の開いているコードは次のようになります。

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

それはそれを開きますが、通常のユーザーとして、私はそれが管理者として必要です。これを行う方法はありますか?? あなたの助けを前もってありがとう!

4

1 に答える 1

4

通常のアプリケーションでは、別のユーザーとしてファイルを開くことはできません。この種のパワーが必要な場合は、おそらくインストーラー全体を昇格して実行する必要があります。

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
于 2012-05-25T20:11:26.767 に答える