1
安裝我需要發生後所有的安裝,任何想法?感謝修改註冊表。如何修改註冊表的權限後,用Inno Setup的
的[Registry]
會話發生beforre第一[Run]
。我需要在完成所有運行後修改註冊表。我在setACL.exe
最近的[Run]
這樣做,但我正在尋找更優雅的東西(腳本)。
安裝我需要發生後所有的安裝,任何想法?感謝修改註冊表。如何修改註冊表的權限後,用Inno Setup的
的[Registry]
會話發生beforre第一[Run]
。我需要在完成所有運行後修改註冊表。我在setACL.exe
最近的[Run]
這樣做,但我正在尋找更優雅的東西(腳本)。
雖然你可以使用CurStepChanged(ssPostInstall)
step落實在安裝結束一個動作,它不會幫助你多少。 Inno Setup Pascal Script中沒有設置註冊表權限的功能。無論如何你必須執行一個外部工具。
雖然您不必使用第三方實用程序(SetACL)。您顯然可以使用Windows regini
命令。
見Change registry permissions via command line (batch file)。
另一種選擇是在[Registry]
部分之前執行您的應用程序。
[Files]
Source: "MyProg.exe"; DestDir: "{app}"; AfterInstall: ExecMyProg
[Code]
procedure ExecMyProg;
begin
if Exec(ExpandConstant('{app}\notepad.exe'), '', '',
SW_SHOW, ewWaitUntilTerminated, ResultCode) then
begin
Log('Executed');
end
else
begin
Log('Failed to execute');
end;
end;
後「是什麼」具體是:
例如,如果在執行某些程序正在安裝,你可以使用
AfterInstall
parameter執行呢?我猜想在你運行'[Run]'部分後,你應該告訴我們!或者使用'[Registry]'部分有什麼問題? –在最後一次RUN後,[註冊表]會話出現在第一個RUN位置。我需要在所有運行完成後修改註冊表。我在上次運行時使用setACL.exe執行此操作,但我尋找更優雅的腳本(腳本)。 –
這可能是您可以獲得的最優雅的解決方案。 –