2011-03-16 74 views
0

我已經創建了MSI文件,然後用setupbld.exe創建了setup.exe。我想在setup.exe圖標上有這個屏蔽,所以當用戶嘗試運行這個安裝程序時,用戶將立即得到此屏幕的屏幕,其高程爲User Account Control(UAC)。我該怎麼辦?如何強制進行WiX的權限提升setupbld.exe

目前,我產生的setup.exe與以下CMD行:

setupbld.exe -out c:\Setup.exe -mpsu c:\outTEst\a.msi -setup setup.exe -title "setup" 

現在,用戶必須點擊setup.exe,選擇以管理員身份運行爲了安裝我的應用程序。

+0

我認爲我知道該怎麼做。我應該使用setupbld.exe來打包它們,並使用正確的清單文件mt.exe來強制setup.exe上的UAC提升。 – Darqer 2011-03-16 22:43:26

回答

3

Setupbld.exe不支持asAdministrator標高的標記。如果你的.msi只能運行在「早」的高程,你的.msi中有一個bug。通常它是自定義操作,需要在沒有模擬的情況下在延遲上下文中運行。

+0

Msi可以在沒有評估的情況下運行我有自定義操作,並且此操作需要管理員權限。我應該做什麼是有任何開源易於使用的命令行工具? – Darqer 2011-03-16 20:46:34

+3

要運行具有完全權限的自定義操作,可以將其標記爲不拖延而不模擬。 – 2011-03-17 08:04:52

1

http://blog.torresdal.net/2008/10/06/

該博客確實幾乎你所談論的,如果我理解正確的到底是什麼。我正在使用我的msi管理員,以便我的自定義操作正常工作。但是,我也在寫入和閱讀註冊表,並且出於某種原因從註冊表中讀取不起作用。日誌文件說,AppSearches正在返回簽名3,我相信這意味着訪問被拒絕。我仍然在研究爲什麼會發生這種情況。

最好。

編輯:我相信我的註冊表問題與我的管理員權限無關,我知道我的設置給了我更高的權限,因此無視註冊表問題的評論。

+0

通常,當我遇到註冊表問題時,我最終意識到我的應用程序(x64/x86)版本正在導致此問題。 – Darqer 2013-08-01 14:12:41

+0

http://blog.torresdal.net/2008/10/06/似乎不可用(Web服務器沒有響應;它超時)。 – 2016-01-06 17:27:51