我遇到了一個奇怪的問題與「配置」msi我正在寫WIX中使用XMLConfig檢查,刪除,然後在一個單一的XML文件中創建新的值。WIX XMLConfig不同的根元素名稱
由於我發現WIX我一直在打包很多我們的手動配置過程,所以這是我的第7次或第8次,所以我基本上完成了上述步驟。
雖然我遇到了一個奇怪的情況,但我不確定如何讓WIX理解。
同一文件可以改變它的視情況而定
當第一次安裝根元素名稱:
<DataSet>
<SomeStuff />
</DataSet>
如果刪除或更改已安裝程序的「設置」對話框
<NewDataSet>
<SomeStuff />
</NewDataSet>
我正在使用VerifyPath來檢查刪除和添加,但當xmlconfig的路徑不在文件中時,它會顯示錯誤,因此即使我有兩組XMLCon無花果每個場景人會明顯錯誤輸出這是不希望
A組分摘錄低於
<Component Id="C_MobileSettings" Guid="" KeyPath="yes">
<CreateFolder Directory="MOBILEINSTALLLOCATION" />
<XmlConfig
Id="MobileSettings_Key_Delete"
Action="delete"
ElementPath="//NewDataSet/GeneralSettings"
File="[MOBILESETTINGSPATH]"
Name="Key"
Node="element"
On="install"
Sequence="1"
VerifyPath="//NewDataSet/GeneralSettings/Key"
xmlns="http://schemas.microsoft.com/wix/UtilExtension"
/>
<XmlConfig
Id="MobileSettings_Key_Add"
Action="create"
ElementPath="//NewDataSet/GeneralSettings"
File="[MOBILESETTINGSPATH]"
Name="Key"
Node="element"
On="install"
Sequence="1"
Value="Product Key"
xmlns="http://schemas.microsoft.com/wix/UtilExtension"
/>
</Component>
這個配置MSI必須能夠在任何點後的軟件安裝無論根部的狀態的運行元素名稱。
這是可能的直WIX或我會不得不寫一個自定義操作?
正是醫生所訂購的!像魅力一樣工作。似乎我只是在錯誤的地方尋找答案。猜猜我需要刷新我的XPath知識,因爲接下來會有更復雜的XML配置。謝謝你這麼快速的解決方案,你已經救了我的理智! (至少在接下來的5分鐘內,直到下一個WIX「哪裏有記錄?」時刻) – TofuBug