簡體   English   中英

Wix - 自定義安裝目錄

[英]Wix - Custom installation directory

我正在使用 Wix 3.x,用戶應該能夠選擇目標目錄。 我的 Setup.wxs 目前是這樣的: http ://pastebin.com/uH1EjbDQ

向用戶詢問自定義目標目錄的最簡單方法是什么? (INSTALLDIR/TARGETDIR?!)我見過人們在那里建立自己的對話框頁面的例子,但這並不是真正必要的,是嗎?

更新:

當我添加

<Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR"/>
<UIRef Id="WixUI_InstallDir" />

<UIRef Id="WixUI_Mondo" />但在</Product>之前,我收到以下錯誤:

The primary key 'ExitDialog/Finish/EndDialog/Return/1' is duplicated in table 'ControlEvent'. Please remove one of the entries or rename a part of the primary key to avoid the collision. (LGHT0130) - C:\\delivery\\Dev\\wix30_public\\src\\ext\\UIExtension\\wixlib\\WixUI_Mondo.wxs:44

現在,當我刪除<UIRef Id="WixUI_Mondo" />我可以構建設置。 但是不再顯示“選擇安裝類型”(完整、典型、自定義)對話框。 還有一件奇怪的事情:有時會彈出一個對話框,說明它計算磁盤空間(它有一個取消按鈕),但最終它永遠不會自行關閉。 當我關閉它時,我仍然可以繼續。 有沒有辦法以簡單的方式解決這個問題?

謝謝,菲利普

UIRef 元素指的是 WiX 提供的標准用戶界面序列之一:

  • WixUI_Mondo
  • WixUI_高級
  • WixUI_FeatureTree
  • WixUI_InstallDir
  • WixUI_Minimal

您只能在安裝程序中使用這些序列之一。 其中每一個都有一組對話框。 有關每個序列中包含哪些對話框的信息,請參閱WiX 文檔

如果用戶選擇自定義安裝,WixUI_Mondo 允許用戶指定安裝目錄。 只有 WixUI_Mondo 允許用戶選擇典型安裝、自定義安裝或完整安裝。

允許用戶選擇安裝目錄的最簡單方法是使用 WixUI_InstallDir 對話框序列。

SharpDevelop 自己的安裝程序使用 WixUI_FeatureTree 對話框序列。

因此,如果 WiX 提供的一組標准對話框不是您想要的,您可以查看自定義對話框序列 創建您自己的自定義對話框通常是最后的手段。

此鏈接說明了如何以簡單的方式執行此操作。

鏈接UIRef

IsWiX 支持此功能。 看看:

IsWiXMerges.wxs

IsWiXInstaller.wxs

訣竅是我正在使用名為 INSTALLLOCATION 的目錄以及 WiXUI_* 的 UIRef。 這是 WiXUI 使用的類似於 InstallShield 使用 INSTALLDIR 和 Visual Studio 使用 TARGETDIR 的方式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM