Inno Setup CreateProcess 失敗:代碼 740(Inno Setup打包的程序提升為管理員權限)


原文參考 https://www.cnblogs.com/SnailProgramer/p/4243666.html

http://blog.csdn.net/x356982611/article/details/50386824/

1、問題描述

Inno Setup打包的程序在Win7 64位系統上安裝,安裝步驟最后一步若選中運行程序,會跳出一個錯誤提示框。

這是因為64位win7系統運行程序時需要管理員權限,而打包的文件並沒有這個權限就試圖直接運行。解決方案:為安裝包添加管理員權限。

2、添加管理員權限

(1) 在.iss文件的[Setup]節點添加 PrivilegesRequired=admin

(2) 進入安裝目錄,找到文件SetupLdr.e32,這是一個二進制配置文件,需要用ResourceHacker.exe這個工具修改

   找到<requestedExecutionLevel level="asInvoker" uiAccess="false"/></requestedPrivileges>,

修改為<requestedExecutionLevel level="requireAdministrator" uiAccess="false"/></requestedPrivileges>

(3) 修改資源后別忘了編譯一下,然后保存修改后的文件,並替換原來的SetupLdr.e32文件

3、刪除管理員權限

(1) 在[Setup]節點添加 PrivilegesRequired=none 或者 PrivilegesRequired=lowest

(2) 在[Setup]節點修改 DefaultDirName(安裝路徑)的值,默認可能是DefaultDirName={pf}\{#MyAppName},

  不要帶{pf}, {win}, {sys}這些變量值,比如設置成DefaultDirName={localappdata}\{#MyAppName}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM