天天看點

【Eelectron-vue】建構桌面應用(21)- Inno Setup CreateProcess failed;code 740 請求的操作需要提升

在前面的文章中提到過,我是用的是一款名叫

Inno Setup

的打包安裝工具,可以打包成

windows

安裝檔案。

在項目收尾的時候,發現使用

Inno Setup

打包成安裝檔案後,輕按兩下安裝檔案,執行安裝,在最後一步的時候,如果你勾選了

Launch 某應用

的時候會出現需要提升程式執行權限的問題,如下:

【Eelectron-vue】建構桌面應用(21)- Inno Setup CreateProcess failed;code 740 請求的操作需要提升

在網上查了一下,其中微軟官網提到需要提升程式的操作權限即需要用管理者權限啟動才沒有問題,連接配接檢視這裡。

【Eelectron-vue】建構桌面應用(21)- Inno Setup CreateProcess failed;code 740 請求的操作需要提升

然而,我并不想每次使用者啟動程式的時候都需要右鍵程式,然後選擇管理者權限執行,是以這種官方的這種方式不是我想要的。

在無意間做了這麼個嘗試,安裝之後選擇

Launch 應用

的時候會出現這個錯誤,當我把錯誤關閉掉後,然後在輕按兩下執行應用,發現并沒有這個錯誤,那麼說明這并不是

windows

的問題,而我程式也并未牽扯到需要提升權限的操作。那麼隻有一種可能,那就應該是我的打包軟體的問題,即

Inno Setup

的問題。

于是在網上搜尋怎麼給

Inno Setup

安裝的軟體提供

啟動時的管理者權限

發現網上還是有不少教程的,來看一下具體怎麼操作。

首先你需要下載下傳一個可以檢視二進制檔案的工具,因為我們需要去編輯

Inno Setup

中的二進制檔案,是以需要下載下傳

Resource Hacker

TM,連接配接

下載下傳之後打開

Resource Hacker

TM,然後打開

Inno Setup

的安裝目錄,找到

SetupLdr.e32

檔案,打開。

如果你忘了軟體的具體的安裝目錄,可以右鍵該軟體,檢視屬性,就可以看到具體的安裝目錄:

【Eelectron-vue】建構桌面應用(21)- Inno Setup CreateProcess failed;code 740 請求的操作需要提升

因為

Resource Hacker

TM 預設打開的是

.res

.exe

.dll

等格式的檔案,是以第一次打開的時候,是看不到

SetupLdr.e32

檔案的,是以你需要切換成所有格式的檔案。

點選

File->Open

,選擇

Inno Setup

的安裝目錄

【Eelectron-vue】建構桌面應用(21)- Inno Setup CreateProcess failed;code 740 請求的操作需要提升

如下,這樣就能看到

SetupLdr.e32

這個檔案了,然後選擇打開。

【Eelectron-vue】建構桌面應用(21)- Inno Setup CreateProcess failed;code 740 請求的操作需要提升

打開後,找到

requestedExecutionLevel

,并将其修改為管理者權限

【Eelectron-vue】建構桌面應用(21)- Inno Setup CreateProcess failed;code 740 請求的操作需要提升
<requestedExecutionLevel level="asInvoker"  uiAccess="false"/>
// 改為
<requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
           

最後,點選編輯,并儲存

【Eelectron-vue】建構桌面應用(21)- Inno Setup CreateProcess failed;code 740 請求的操作需要提升

最後,你可以使用

Inno Setup

再次進行應用的打包,打包之後安裝勾選

Launch 應用

,就不會再出現這個錯誤了。

還有一個問題待研究,為了安全考慮,一般安裝的程式不會讓它去擷取管理者權限,否則你的計算機可能處于危險狀态。

Inno Setup

既然可配置管理者權限,那麼是不是也可以取消程式第一次

Launch

的時候,不需要管理者權限就能執行呢?研究之後,下片文章再講。

繼續閱讀