Tworzenie upgrade do projektu MSI należy zaplanować już przy tworzeniu instalatra MSI.
Jeżeli zakładamy,że nasz projekt będzie upgradowany a zazwyczaj tak jest, to musimy wykonać pewne kroki na początku. Najważniejszą rzeczą do wykonania jest ustawienie wersji produktu "Version" w "Product properties" na drzewie "General Information". Ustawiamy tutaj wersję, która będzie rozpoznawana przez instalator podczas instalowania Upgrade-u np: 1.0.0000
Tworzenie Upgrade do istniejącej instalacji MSI.
Przy tworzeniu upgrada do istniejącej paczki MSI możemy wykonać tylko Major Upgrade, do wersji Minor Upgrade potrzebny jest plik setup.exe. Dla paczek MSI (Single MSI Image) wykonujemy tylko Major Upgrade.
Krok 1. Wersja produktu
Pierwszą rzeczą, którą powinniśmy zrobić to ustawić nową (nowszą) wersję produktu np: 1.1.0000 (Installation Information->General Information->Product Properties->Version). Zwróć uwagę na właściwość Product Code, Upgrade Code.
Właściwość Upgrade Code musi być taka sama dla całego projektu instalatora.
Krok 2. Kody produktów
Aby nasz Upgrade można było odinstalować i wrócić do poprzedniej wersji należy wygenerować nowy Product Code a także nowy Package Code w "Summary Information Stream".
Nie zmieniamy Upgrade Code!
Krok 3. Przygotowanie Instalatora do Upgrade
Na drzewie Media->Upgrades rozwijamy gałąź "Upgrade Windows Installer Setup" i dodajemy nowy "Major Upgrade Item".
W zakładce "Common" nowego Upgrade wybieramy dla której wersji produktu Upgrade będzie miał zastosowanie:
- dla każdej wcześniejszej (Any earlier version), czy może dla zakresu wersji produktu albo dla wybranej wersji.
Krok 4. Wymiana plików
W tym kroku należy wymień wszystkie pliki które mają być zaktualizowane na wersję użytą w Upgrade.
Ważne. Każdy plik musi posiadać zaszytą nowszą wersje, aby został upgradowany.
Krok 5. Ustawienia Upgrade.
Klikając na drzewo "Upgrade Windows Installer Setup" wyświetlamy właściwości instalacji Upgrade. Mamy 2 opcje do wyboru: Całkowie usunięte starej instalacji i zainstalowanie nowej lub też zainstalowanie Upgrade-u i usunięcie niepotrzebnych plików.
W większości przypadkach zalecana jest opcja pierwsza.
Krok 6. Budowanie paczki
W ostatnim kroku budujemy projekt tworząc nową paczkę MSI typu "MSI Single Image".