Mam trochę problemów ze zrozumieniem, w jaki sposób InstallShield traktuje aktualizacje.Zawsze wykonuj usuwanie/ponownej instalacji podczas aktualizacji
To, czego chcę, to móc zwiększyć numer wersji na instalatorze, przekompilować i rozprowadzić mój instalator. Powinno to automatycznie usunąć poprzednią wersję aplikacji i zainstalować najnowszą wersję (i powinna być prezentowana użytkownikowi jako "aktualizacja").
To jest bardzo prosty instalator, po prostu pobiera dane wyjściowe z kilku projektów Visual Studio (aplikacja EXE, niektóre biblioteki DLL i tak dalej) i instaluje je wszystkie w Program Files. Jest tylko jedna funkcja i jest zawsze instalowana.
Nie chcę zmieniać kodu aktualizacji produktu, ponieważ musiałbym wtedy utworzyć nowe ścieżki aktualizacji (po jednej dla każdej poprzedniej wersji), co jest kłopotliwe.
Próbowałem już tego wcześniej (zwiększając numer wersji, ale nie zmieniając ani kodu produktu, ani kodu uaktualnienia), ale za każdym razem, gdy uruchamiam instalator, aby "zaktualizować" produkt, mówi " Wznawianie pracy kreatora dla [ProductName] ", a czasami niektóre pliki nie są zastępowane nowszymi odpowiednikami z nowszego instalatora.
Nie zwiększam numeru "zmiany" numeru wersji. Wiem, że to jest ignorowane. Zazwyczaj spróbuję czegoś takiego, jak 2.0.3 => 2.0.4
.
Jak skonfigurować program InstallShield tak, aby automatycznie usuwał wszystkie poprzednie wersje, instalował najnowszą wersję i przedstawiał to użytkownikowi jako "Aktualizację" lub "Aktualizację", jeśli mają już zainstalowaną poprzednią wersję? Jeśli nie, powinien zainstalować się normalnie ("Instaluj", a nie "Aktualizuj").
używam InstallShield 2013 Pro (wersja 20 SP1), i trzymać się za pomocą edytora InstallShield wewnątrz Visual Studio 2010.
Jakiego typu projektu używasz? InstallScript MSI, Basic MSI, czysty InstallScript? –
Wierzę, że jest to projekt Basic MSI, ale nie jestem zaznajomiony z InstallShield, więc nie wiem na pewno. Ma plik '.isproj' i plik' .ism' w folderze projektu. – qJake
Myślę, że możesz być w stanie osiągnąć to, co chcesz, po prostu aktualizując tabelę uaktualnień, oprócz tego, co już robisz. Przeczytaj to dokładnie: http://apprepack.blogspot.no/2012/06/msi-upgrade-table.html. Zasadniczo zaktualizuj pole VersionMax. Zakłada to, że konfiguracja jest już skonfigurowana dla scenariusza poważnej aktualizacji. –