2009-04-28 10 views
19

Piszę aplikację, która musi być zainstalowana na dużej liczbie komputerów, a także musi się aktualizować. Patrzymy na WIX do tworzenia instalacji. Użyłem ClickOnce i nie jest to dobre rozwiązanie dla tej instalacji. Wydaje się, że WIX pasuje, ale nie ma dobrego procesu dla automatycznej aktualizacji, którą znalazłem.Samodzielna instalacja aplikacji przy użyciu WIX?

Spojrzałem na ClickThrough, ale nie wydaje się jeszcze gotowy na prime time. Czy ktoś ma inne dobre rozwiązanie do użycia z WIX (lub może innym programem instalacyjnym), aby automatycznie zaktualizować instalację aplikacji?

+0

Hay, jakiego narzędzia użyłeś w końcu do tego? czy możesz skierować mnie do niektórych przewodników? – petric

+0

Użyłem WIX, ale to jest tak dawno temu. Niestety, nie pamiętam żadnego z przewodników, ale tak naprawdę nie w świecie okien. –

+0

Ok, thx mimo to. – petric

Odpowiedz

10

Tak, ClickThrough naprawdę jest tym, czego szukasz. Są w nim bity i kawałki, które działają. Możliwe, że będziesz mógł przeanalizować kod i sam go użyć bez dodatkowej "integracji interfejsu użytkownika i kompilacji". Większość błędów znajduje się na wyższych poziomach. W katalogu głównym aktualizacja RSS i wykonywany bootstrapper działają bez zarzutu.

+0

dobra, spróbuję i zobaczę, jak to jest ... Właśnie przeczytałem, że nadal potrzebuję pracy, aby być gotowym. Jeśli uda mi się wydobyć z tego główne elementy, może to zadziałać. –

+0

Czy są dostępne opisy, prezentacje lub dokumentacja? Szwy "ClickThrough" implikują wiele innych rzeczy, które ciągle są wyciągane, więc nie mogę znaleźć niczego o tym, jak w ogóle korzystać z RSS i boostrapper. – Jay

+2

Ta odpowiedź wydaje się już nieaktualna. Zgodnie z linkiem poniżej, ClickThrough już nie istnieje i nie powraca w tym samym formularzu. http://wixtoolset.org/issues/1412/ Nie wiem, czy istnieje alternatywa, czy nie ... – rbwhitaker

4

Jak to musi być "automatyczne" uaktualnienie? :-)

Używamy WiX (2.0) do aplikacji, która musi być instalowana w kółko. Tak długo, jak idziesz z "dużymi aktualizacjami" od wersji do wersji, to działa dobrze - możesz odinstalować starą wersję, a następnie ponownie zainstalować nową - bez większych problemów.

Kluczem jest posiadanie stabilnej "UpgradeCode" (GUID w twoim WiX), która nigdy się nie zmienia - jest kluczem do twojej aplikacji - i posiadania nowego ProductCode dla każdego wydania.

Następnie w pliku wxs, potrzebne są dwa bity:

<Upgrade Id='--your-updatecode-GUID-here--'> 
    <UpgradeVersion MigrateFeatures='yes' RemoveFeatures='ALL' /> 
</Upgrade> 

<InstallExecuteSequence> 
    <RemoveExistingProducts After='InstallInitialize' /> 
</InstallExecuteSequence> 

To powinno wystarczyć!

Poza tym - nic naprawdę dużo mówić - po prostu działa :-)

Marc

+3

dzięki za odpowiedź ... Szukam czegoś, co może automatycznie pobrać aktualizację przez sieć. –

3

Instalator Windows nie jest tak naprawdę przeznaczony dla „self” aktualizacji oprogramowania. Jeśli nie potrzebujesz MSI lub naprawdę potrzebujesz, aby aplikacja "wyciągała" własne aktualizacje, użyj NSIS lub innego narzędzia i napisz własną aktualizację rutyny/usługi.

Jeśli jednak jest instalowany na dużej liczbie komputerów w ramach jednej organizacji, lepszym rozwiązaniem byłoby wdrożenie MSI za pośrednictwem usługi Active Directory. Następnie można "wypchnąć" aktualizacje za pomocą zasad grupy. Będzie to o wiele bardziej niezawodne niż jakakolwiek aplikacja, która się aktualizuje.

+0

Aktywny katalog nie jest dla mnie opcją. Przeczytam o NSIS i sprawdzę, czy będzie pasował do moich potrzeb. Dzięki za odpowiedź. –