我已經使用帶有EmbeddedUI元素的自定義WPF UI製作了帶有WiX的MSI安裝程序。它與src/DTF/Samples/EmbeddedUI中的示例類似。WiX:使用Burn安裝.NET,然後使用自己的WPF嵌入式UI啓動MSI
我現在想要有一個引導程序來檢查.NET 4是否已安裝,如果沒有安裝它,然後啓動我的MSI。
它看起來像Burn會覆蓋我的WPF EmbeddedUI,以便將.NET 4和MSI安裝鏈接到具有單個進度條的單個安裝中。我知道我可以有一個託管應用程序來更改Burn的UI,然後將參數傳遞給我的MSI,但問題是我希望我的UI在WPF中依賴於.NET,並且如果整個引導程序依賴於.NET那麼如果用戶沒有安裝它,用戶甚至不能打開引導程序。
我想要的是使用像Wixstdba這樣的簡單用戶界面來安裝.NET的引導程序,然後用它自己的WPF EmbeddedUI啓動我的MSI,而不必將其與.NET安裝鏈接在一起。我不介意這兩個安裝都會有自己的進度條,我只希望能夠使用我的WPF EmbeddedUI來安裝主應用程序。
這是可能的。怎麼樣?謝謝!
我已經嘗試過DisplayInternalUI,但它似乎不適用於MSI中的嵌入式用戶界面,它只會顯示它,如果我已經在其中設置了UIRef。 (例如:可以使用DisplayInternalUI,但不能使用我的WPF UI)。 另外,你可能會更具體一點,如何一個託管引導程序的應用程序可以讓我只有在安裝.NET後顯示我的WPF UI? 感謝您的回答! –
user1502453
對不起,「你的自定義UI」我的意思是你爲Burn創建的自定義UI。它可以是WPF,然後您可以爲引導程序指定.NET prereq,如第二個鏈接所示。 – BryanJ
我明白了。我認爲讓我的引導程序用戶界面依賴於.NET會使它無法啓動,如果您尚未安裝它,但確實可以在啓動包含WPF UI的自定義boostrapper應用程序之前設置.NET必備條件,那樣檢查.NET _then_啓動我的用戶界面,這正是我想要的。感謝你的回答! – user1502453