inno setup打包程序安裝出現CreateProcess failed;code 740


問題: 使用inno setup打包我們發布的程序test.exe,在安裝結束后,勾選了Launch xxx運行程序,然后出現如下報錯:

Unable to execute file:xxx

CreateProcess failed;code 740.

請求的操作需要提升。

在這里插入圖片描述

報錯原因: 下面是test.exe的2個圖標,帶盾牌的是具備管理員權限,不帶盾牌的為普通程序。

在這里插入圖片描述
在這里插入圖片描述

  • 打包普通程序時,安裝結束不會報錯;
  • 打包帶管理員權限程序時,安裝結束才會報錯。

個人猜測可能是因為在執行安裝包時,安裝包不帶管理員權限,所以在安裝結束后去啟動不帶管理員權限的test.exe,可以正常執行。

但是,如果去執行帶管理員權限的test.exe,就會有權限問題。

解決思路: 所以,我們需要將安裝包也具備管理員權限,讓安裝包以管理員權限運行。

具體實施步驟如下:

讓inno setup生成的安裝包帶管理員權限

1、下載Resource Hacker

下載地址:http://www.angusj.com/resourcehacker/

在這里插入圖片描述

2、修改SetupLdr.e32文件

右鍵管理員權限運行ResourceHacker.exe,選擇File->Open,找到Inno Setup安裝目錄下的SetupLdr.e32文件。

在這里插入圖片描述

將"asInvoker"改為"requireAdministrator"

在這里插入圖片描述

修改后,先選擇Action->Modify,然后再File->Save。如下:

在這里插入圖片描述

3、重新編譯打包腳本

使用inno setup重新編譯,生成的安裝包,圖標會帶盾牌。如下:

在這里插入圖片描述

 


轉自:https://blog.csdn.net/zyhse/article/details/108169479


免責聲明!

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



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