用Inno setup制作以管理員權限啟動的安裝包


 inno setup制作的安裝包,默認是不需要管理員權限啟動的。我們制作安裝包,往往需要做一些設置工作,這些設置工作可能用到管理員權限。使用Resource Hacker修改inno setup資源,使inno settup生成的安裝包以管理員權限啟動。

1 Resource Hacker簡介
Resource Hacker 免費軟件,用於查看,修改,添加和刪除 Win32 可執行文件的資源。內置了一個內部資源編譯器和反編譯器。

官網:http://www.angusj.com/resourcehacker/
安裝包:http://www.angusj.com/resourcehacker/reshacker_setup.exe
壓縮包:http://www.angusj.com/resourcehacker/resource_hacker.zip

2 Resource Hacker功能
2.1. 查看 Win32 可執行和相關文件的資源 (.exe, .dll, .cpl, .ocx),在已編譯和反編譯的格式下都可以。

2.2. 提取 (保存) 資源到文件 (*.res) 格式,作為二進制,或作為反編過的譯資源腳本或圖像。
圖標,位圖,指針,菜單,對話,字符串表,消息表,加速器,Borland 窗體和版本信息資源都可以被完整地反編譯為他們各自的格式,不論是作為圖像或 *.rc 文本文件。

2.3. 修改 (替換) 可執行文件的資源。
圖像資源 (圖標,指針和位圖) 可以被相應的圖像文件 (.ico, .cur, .bmp),.res 文件,甚至另一個 *.exe 文件所替換。
對話,菜單,字符串表,加速器和消息表資源腳本 (以及 Borland 窗體) 可以通過使用內部資源腳本編輯器被編輯和重新編譯。
資源也可以被一個 *.res 文件所替換,只要替換的資源與它是同一類型並且有相同的名稱。

2.4. 添加 新的資源到可執行文件。
允許一個程序支持多種語言,或者添加一個自定義圖標或位圖 (公司的標識等) 到程序的對話中。

2.5. 刪除 資源。大多數編譯器添加了應用程序永遠不會用到的資源到應用程序中。刪除這些不使用的資源可以減小一個應用程序的大小。

3 使用ResourceHacker修改inno setup資源
3.1 解壓resource_hacker.zip壓縮包,運行 resource_hacker.exe。 

3.2 選擇ResourceHacker 文件菜單中的打開菜單,打開inno setup的SetupLdr.e32 文件。

3.3 修改 SetupLdr.e32 的Manifest文件。 
A:把requestedExecutionLevel level設置為requireAdministrator 
B: 點擊 編譯 按鈕,點擊保存。 
C:點擊保存按鈕,保存修改后的文件。

3.4 使Inno Setup 打包的文件將以管理員權限運行。生成的打包文件帶有管理員啟動標志。 

未修改前圖標沒有盾牌:

修改后圖標多了盾牌:

3.5 注意:這里只是安裝包文件使用管理員權限啟動,如果要使包內的運行文件使用管理員權限,你需要設置自己開發升序的manifest屬性requestedExecutionLevel level="requireAdministrator"。
即vs工程的配置屬性=>清單文件=>UAC執行級別=>選則requireAdministrator(/level='requireAdministrator')

 

 

 轉自:https://blog.csdn.net/longji/article/details/53523808


免責聲明!

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



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