Temat: ClickOnce wady i zalety
W kilku moich projektach używałem zarówno WiX i ClickOnce. Wybór technologii należy rozpatrzeć pod kątem wymagań danego projektu.
Tworzyłem projekt, który wymagał:
- aktualizacji bazy danych
- instalacja własnych czcionek
- autoaktualizacja aplikacji poprzez internet
WiX
Plusy:
- uruchamianie skryptów SQL w celu założenia lub aktualizacji bazy danych
- możliwość instalacji czcionek w katalogu systemowym
- możliwość instalowania aplikacji w Program Files
Minusy:
- brak mechanizmu autoaktualizacji
- ograniczone możliwości dostosowania okien instalacyjnych
- brak wsparcia ze strony Visual Studio
- brak dobrego narzędzia do tworzenia zaawansowanych programów instalacyjnych (korzystałem z notatnika)
- trzeba samemu pamiętać o dodaniu wszystkich wymaganych pakietach (np. .NET Framework, SQL Server Express)
- złożony proces generowania wersji instalacyjnej (trzeba uruchamiać kilka aplikacji w określonej kolejności)
Dlatego na pewnym etapie projektu przeszedłem jednak na ClickOnce
ClickOnce
Plusy:
- wbudowany mechanizm autoaktualizacji
- wsparcie ze strony Visual Studio
- prosty proces generowania instalatora
- możliwość utworzenia własnych okien i sterowanie procesem instalacji za pomocą API
- możliwość wybrania wymaganych pakietów (jest spora lista gotowych pakietów i w razie czego można tworzyć własne)
Minusy:
- brak możliwości aktualizacji bazy danych (musiałem to zrobić samodzielnie w aplikacji po dokonaniu aktualizacji)
- brak możliwości instalacji czcionek (musiałem utworzyć własny pakiet, który instalował tylko czcionki)
- brak możliwości instalacji do katalogu Program Files (ale to tylko stare przyzwyczajenie)
Reasumując. Stworzenie instalatora w WiX to wyzwanie i zabiera bardzo dużo czasu, zwłaszcza jeśli nie jest to prosty instalator. ClickOnce mimo swoich ograniczeń jest bardzo łatwy w użyciu i ma od razu autoaktualizację.
Zdaje się, że Windows Store zapowiadany wraz Windows 8, będzie używał technologii ClickOnce lub czegoś bardzo podobnego do instalacji i aktualizacji aplikacji. Dlatego polecam ClickOnce.
Marcin Sulecki edytował(a) ten post dnia 11.10.11 o godzinie 14:34