2012-04-26 18 views
2

我有一個定製在<Fragment>中的定製表,我想鏈接到主文件.wxs。我的問題類似於this question,但我的片段沒有<CustomAction>標記可供引用,並且在主文件中沒有使用<CustomTableRef>標記。WiX:從片段中拉入CustomTable無需自定義動作

處於<Fragment>拉不具有<...Ref>能夠標籤注入僞標記,可以Ref「d的唯一途徑? - 例如一個<Component>與「永不安裝」的條件,或從來沒有預定運行的<CustomAction>(或做一些完全良性的設置屬性Foo"")?

我正在尋找推薦的最佳實踐。謝謝!

回答

2

在你的片段,你可以像這樣創建一個屬性:

<Property Id="IncludeMyFragment" Value="1" /> 

然後引用片段在源像這樣:

<PropertyRef Id="IncludeMyFragment"/> 

這應該在片段的內容拉。

+0

這也將有內置MSI中設置的屬性的副作用,不會做任何事情。不是世界的盡頭,但也不乾淨。您可以通過省略Value屬性來避免這種情況。 – 2012-04-27 12:17:55

1

使用引用時,會消耗整個片段。您是否定義了一個自定義表格,僅僅是爲了成爲關於MSI的文檔/元數據,還是實際上是在數據驅動的自定義操作中使用它?通常我會在一個片段中定義自定義動作和自定義表模式,以便當有人引用自定義動作時,他們將獲得支持基礎架構。然後其他片段可以包含所述定製表的實際數據(特定實現)。