2012-11-29 85 views
1

Inno安裝工具包安裝了兩個EXE文件。安裝後,一個文件只需要普通的用戶權限。第二個文件標有需要管理員權限和XP兼容模式的屬性。Inno安裝程序 - 它爲什麼修改exe屬性以要求管理員權限和XP兼容模式

原始EXE文件沒有可見的屬性設置,這需要管理員權限或XP兼容模式,並且在正常用戶模式下的Windows 7框中正常運行。第二個文件最初是在XP系統上編譯的 - 但是當我將它複製到Windows 7系統時(無需安裝程序),似乎運行正常。

當安裝程序腳本指定「PrivilegesRequired = none」時,我仍然會得到一個帶有「Admin Privilege Required」標記並且文件屬性設置爲「disable visual themes」的已安裝EXE文件的修改圖標。

的創新科技的版本是5.5.0(一)

,我怎麼把安裝程序的EXE文件複製,而不改變其性質?

#define InstallRoot "D:\InstallationSource\Tracker\" 
#define AppRoot "C:\Tracker\" 
...... 

[Setup] 
;directories 
SourceDir={#InstallRoot} 
DefaultDirName={#AppRoot} 
....... 

[Files] 
Source: "*"; DestDir: "C:\Tracker\"; Flags: recursesubdirs 
+0

你的[Files]部分的外觀如何? – jachguate

+0

的#define InstallRoot 「d:\ InstallationSource \跟蹤\」 的#define爲approot 「C:\跟蹤\」 .... [配置] ;目錄 SourceDir = {#} InstallRoot DefaultDirName = {#爲approot } ....... [Files] 來源:「*」; DestDir:「C:\ Tracker \」;標誌:recursesubdirs –

+0

不要發表評論,編輯你的問題,幷包括信息! – jachguate

回答

2

Inno不會改變這些屬性。根據.exe文件的文件名,它們根據每個用戶進行設置,而不管它在哪個目錄。因此,如果您爲.exe文件名選擇了過於通用的內容(例如,「setup.exe」或「 app.exe「),那麼你可能會從其他應用程序獲取兼容性設置。

如果您的安裝程序名稱是通用名稱(也就是「setup.exe」),那麼Windows可能會試圖通過將它繼承的兼容性設置複製到它安裝的任何應用程序來「有幫助」。

無論哪種方式,挑選唯一的文件名。

相關問題