2017-08-07 110 views
0

如這裏指出:https://blogs.msdn.microsoft.com/astebner/2006/12/14/some-useful-things-i-have-learned-about-windows-installer-and-uac/WIX:CustomAction *有*的管理權限*和*訪問會話

我無法與管理權限訪問會話的數據自定義操作運行(FE獲取我需要的註冊表項或路徑)。我可以在我的自定義操作上獲得管理權限的唯一方法是通過運行(執行 - 操作調用的屬性)此操作作爲延遲或提交而不是立即。

我的理解現在是這樣的:

既然沒有辦法在模型背景知識維克斯安裝系統(如FE我想安裝Microsoft Office加載項),我需要我的背景模型通過創建程序化C#代碼來獲得知識。 (或不?)爲什麼我不需要管理權限呢?

請告訴我,如果我忽視了一些東西。我接近這個錯誤嗎?

+0

正如Michael所說,這可能會更具體。例如,通過註冊表搜索可以直接獲取HKCU註冊表項。此外,許多用戶路徑在諸如AppDataFolder,DesktopFolder等屬性中都可用。 – PhilDW

回答

0

您的問題不清楚您是否正在尋找一種方式將信息從未升遷到升高或從升高回升到未升高。後者是不可能的。前者使用CustomActionData。但是,作爲建議,首選數據驅動程序代碼(它有助於在Windows安裝程序中重複使用)並更喜歡內置到自定義代碼。 (你是否可以設置一個屬性,並根據該屬性定義註冊表項?如果是這樣,Windows安裝程序將完成所有繁重工作。)

+0

呀可悲的是,我需要把同樣的文件,根據是否存在這些目錄(在我的具體情況下的多個目錄,我想安裝的Microsoft Excel中。唯一可行的辦法的插件(我已經試過手動所有這些)是通過將其放置在一個與其中X代表安裝的版本名稱「OfficeXX.X」的文件夾名爲「XLSTART」文件夾中。 我無法找到一種方法,與威克斯標記這樣做。 – Ravior

+0

聽起來您可能正在尋找一個[SetDirectory](http://wixtoolset.org/documentation/manual/v3/xsd/wix/setdirectory.html)自定義操作。這會覆蓋給定[Directory](http:// wixtoolset.org/documentation/manual/v3/xsd/wix/directory.html)。 –