2012-02-08 49 views
1

我正在Eclipse中創建一個Windows可執行EXE文件,其中包含我的java程序的一個ANT任務launch4j,並將其命名爲「MyApp.exe」。我需要這個程序在Windows系統上沒有管理員身份驗證運行。 到目前爲止,這工作。它運行良好,沒有任何UAC提示。如果我在我的launch4j ANT任務中將此EXE重命名爲「install.exe」,「setup.exe」或「updater.exe」,則會出現UAC圖標(右下方覆蓋程序圖標),並且我得到啓動程序時UAC提示(僅適用於Windows Vista或7)。 如果我在Windows資源管理器中重命名程序,也會發生這種情況。具有特定名稱觸發器的launch4j可執行文件Windows UAC

same program, renamed via windows explorer

好像有在導致窗口開始與升高的訪問權限(UAC)的程序的文件名一些「保留字」。

有人可以證實這個問題嗎?我真的不能將我的應用程序命名爲「install.exe」或「update.exe」嗎?

+3

MSDN:'圖標疊加層:在Windows Vista中,如果可執行文件需要提升才能啓動,那麼可執行文件的圖標應該用盾牌圖標「加蓋」來表明這一事實。 ...屏蔽圖標疊加層也會自動放置在可執行文件上,這些文件被認爲需要根據安裝程序檢測啓發式進行升級。例如,即使可執行文件沒有嵌入式應用程序清單,名爲setup.exe的文件也會自動收到一個屏蔽圖標疊加層。http://msdn.microsoft.com/en-us/library/bb530410.aspx – ecle 2012-02-09 04:38:47

+0

謝謝爲了解釋! – ToFi 2012-02-13 10:25:45

回答

2

是的,在觸發UAC的文件名中有保留字。

@eee postet此爲註釋:

MSDN:

圖標疊加:在Windows Vista中,如果可執行文件要求 海拔推出,然後可執行文件的圖標應該是 「蓋章」 用盾牌圖標來表示這一事實。 ...屏蔽圖標覆蓋 也將自動放置在可視爲 需要提升的可執行文件上,依據安裝程序檢測啓發式。例如,對於 示例,即使可執行文件沒有嵌入式 應用程序清單,名爲setup.exe的文件也會自動接收屏蔽圖標 圖標。

http://msdn.microsoft.com/en-us/library/bb530410.aspx

相關問題