如何讓打包的C++安裝程序以管理員身份在Win7下運行

問題描述:

    使用VS2010開發的C++項目,使用inno打包後的安裝程序,安裝在系統盤後,在桌面創建的快捷方式必須右鍵以管理員身份才能正常運行,否則雙擊運行程序出現異常。


解決方法:

     在VS2010解決方案資源管理器中右鍵啓動項目->屬性,彈出 個工程屬性頁,定位到鏈接器->清單文件->UAC執行級別選擇requireAdministrator (/level='requireAdministrator')

,單擊應用、確定,關閉工程屬性頁。


編譯生成新的可執行文件,重新打包,安裝後的程序,雙擊桌面快捷方式即可正常運行。


後續問題補充:

     對於已經安裝VS的Win7環境,上述問題已經解決,但若打包程序的Win7安裝環境尚未安裝VS2010,可能會出現Win32下缺少如下dll文件的問題


此時的解決方案是使用inno setup打包安裝程序時,直接將這三個dll在程序安裝時拷貝到system32下即可

以下爲iss文件的改動


此時使用inno setup compiler重新編譯iss文件,生成的可執行文件就可以在爲安裝缺少以上dll的win7系統中運行了。


注意inno下System32正確的destDir是sysnative,否則dll文件會在安裝時sysWOW64目錄中去,即使destDir寫做{win}\System32\,

dll也不會再安裝時正確拷貝到System32下。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章