2013-08-24 48 views
1

關於我在設置屬性值是Bundle包中其他屬性的結果時遇到問題。 我嘗試使用CustomAction但沒有運氣。 在依賴其他屬性的包中設置屬性值的正確方法是什麼?設置屬性值與燒傷

我的最終目標是檢測VC++ 2010 SP1可再發行組件的存在。 問題是用於檢測它的Version註冊表鍵在版本號之前有一個前綴「v」,例如, 「v10.0.40219.325」。

我做了測試,並發現了下面的表達式時,前綴 「V」 的存在不能正常工作: InstallCondition = 「NOT VC10_RUNTIME OR(VC10_RUNTIME < v10.0.40219.01)」>

那麼什麼我想是從註冊表中提取MajorVersion,MinorVersion,Bld,Rbld的值並將它們連接成一個新的屬性。然後,我將使用InstallCondition和DetectCondition中沒有「v」前綴的這個新屬性。

我該怎麼做?

謝謝

回答

1

隨着維克斯3.8.722新功能允許您(或直接讀取註冊表)寫一個BAFunction.dll在C#和OnDetectComplete讀取屬性,然後設置條件的屬性。如果您使用wixextba.codeplex.com的WixBalExtensionExt.dll,則還可以在Wix 3.7中執行此操作。

+0

我的請求並非真正有效,因爲[此處討論](http://stackoverflow.com/questions/18419006/registrysearch- VS-utilregistrysearch功能於燒)。 –