Jaki jest odpowiednik kodu aktualizacji instalatora Visual Studio w programie Inno Setup? Znalazłem ten artykuł How do I uninstall related products in Inno Setup using an InstallShield Upgrade Code GUID, aby wyszukać produkty za pomocą kodu uaktualnienia. Czy AppId jest taki sam jak UpgradeCode? Jestem nowy w konfiguracji Inno, czy ktoś może mi pomóc?Aktualizacja odpowiednika kodu w konfiguracji Inno
Odpowiedz
Zazwyczaj nie odinstalowuje się starszych wersji aplikacji podczas instalowania aktualizacji.
The AppId
jest spokrewniony; biorąc pod uwagę dwa instalatory (lub częściej dwie wersje tego samego instalatora) o tym samym identyfikatorze, domyślnie Inno zaproponuje instalację w tym samym folderze co poprzednia instalacja, a dwa udostępnią informacje o odinstalowaniu.
Zwykle po zwolnieniu uaktualnionej wersji tej samej aplikacji wystarczy upewnić się, że AppId
(lub AppName
, jeśli nie określono identyfikatora) jest taka sama, jak w starszej wersji i wszystko po prostu zadziała.
Jedno, co jest zalecane, choć (nawet do pierwszej wersji) jest dodanie następujących do sekcji [Setup]
:
DisableDirPage=auto
DisableProgramGroupPage=auto
To pozwoli użytkownikowi wybrać miejsce instalacji na pierwszej instalacji, ale ukryć wybór na kolejnych instalacjach/uaktualnieniach. Ponieważ i tak Inno domyślnie przyjmuje poprzednią lokalizację, unika to ewentualnych pomyłek (i pozostawionych plików), które mogą wynikać ze zmiany lokalizacji instalacji z jednej instalacji na drugą.
Poza tym rzadko istnieje potrzeba robienia czegokolwiek innego. W rzadkich przypadkach możesz spowodować, że dany plik używany w poprzedniej wersji będzie nadmiarowy (np. Nie będzie już używać konkretnej biblioteki); jeśli chcesz, możesz sobie z tym poradzić, używając wpisu [InstallDelete]
, aby usunąć wszystkie pliki z wcześniejszych wersji, które nie są już potrzebne. (Zawsze upewnij się, że usuwasz tylko określone pliki po nazwie - używanie symboli wieloznacznych jest bardzo niebezpieczne.) Zwykle nie ma za wiele krzywdzenia w pozostawianiu zbędnych plików (chyba że są ogromne) - w końcu i tak zostaną oczyszczone, jeśli użytkownik odinstalowuje.
Jeśli chcesz jeszcze bardziej dostosować swoje zachowanie, możesz zrobić różne rzeczy w [Code]
.
od tej pory nie dałem użytkownikom opcji wyboru miejsca instalacji. Więc muszę zachować AppId i AppName same w sobie. Bardzo dziękuję :) –
Możesz zmienić 'AppName', jeśli chcesz, o ile' AppId' pozostanie niezmienione. Ale jeśli już wydałeś oprogramowanie, używając skryptu, który nie ma określonego 'AppId', musisz zrobić, aby twoja * następna * wersja miała tę samą nazwę' AppName' i nadal nie ma 'AppId' lub mieć'. AppId' ustawiony równy 'AppName' poprzedniej wersji (brakowało' AppId'). Mam nadzieję, że to jasne. :) – Miral
[DisableDirPage] (http://www.jrsoftware.org/ishelp/index.php?topic=setup_disabledirpage) i [DisableProgramGroupPage] (http://www.jrsoftware.org/ishelp/index.php?topic= setup_disableprogramgrouppage) są teraz domyślnie automatyczne. –