2012-03-12 11 views
11

Właśnie zacząłem grać z Burnem, aby spróbować połączyć wiele plików MSI. Używam WiX v3.6.2705.0.W jaki sposób mogę zezwolić na wybieranie funkcji MSI w programie ładującym z obsługą nagrań WiX?

Łańcuch działa, ale teraz próbuję uzyskać opcjonalne funkcje do pracy. Miałem nadzieję, że będzie to tylko przypadek ustawienia EnableFeatureSelection na "yes" dla moich tagów MsiPackage, ale nie ma znaczenia, czy jest włączona czy wyłączona.

Czy jest coś jeszcze, co należy zrobić, aby uruchomić opcjonalne funkcje lub czy jest to znany problem?

Dzięki Alan

Odpowiedz

8

Jeśli chcesz wyświetlać funkcje w interfejsie dla użytkownika, aby wybrać to istnieją dwie możliwości:

  1. Utwórz niestandardową aplikację typu bootstrapper za pomocą funkcji Burn, aby zebrać informacje od użytkownika, a następnie przekazuj te informacje do msi podczas jej uruchamiania. Custom WiX Burn bootstrapper user interface? wix-burn-3-6-beta-custom-ui-examples

  2. Jeśli autorem UI do swojego MSI i chcesz Spal do wyświetlania interfejsu użytkownika, że ​​oprócz interfejsu Burn, następnie w MsiPackage ustaw DisplayInternalUI = "yes".

+0

Dzięki za to Bryan. Będę musiał zbadać źródło dla samego instalatora WiX, jak sugerujesz. Flaga DisplayInternalUI wygląda interesująco. –

+0

Co się stanie, jeśli instalacja MSI Y zależy od wyboru funkcji w interfejsie użytkownika MSI X wyświetlanej przez DisplayInternalUI = "yes"? Jak uzyskać te informacje z MSI X, aby warunkowo zainstalować MSI Y? –

+0

Nie sądzę, że można @KevinWong. Nie sądzę, abyś mógł przekazać te informacje z instalatora z powrotem do bootstrappera podczas instalacji. Wolę praktykę posiadania pojedynczego interfejsu użytkownika ładowania początkowego, a następnie zebrać wszystkie informacje potrzebne od użytkownika przed instalacją. – BryanJ

2

ca użyć elementu MsiProperty aby zapełnić działce z cech, które mają zainstalowany domyślnie ADDLOCAL.

UWAGA: MsiProperty ADDLOCAL - Usunięte w Wix 4, ostrzeżenia i ignorowane w Wix 3,11

+0

Dzięki. Tak naprawdę chciałem zezwolić użytkownikowi na wybór funkcji, które mają być używane, a nie domyślnie. Czy wiesz, czy to jest możliwe? –

+0

Alan ma rację, ale tak naprawdę szukałem właśnie tego aspektu, chciałbym podziękować @ciprian za tę odpowiedź! :-) – CodeFox

Powiązane problemy