Mam projekt wdrożenia, który nie pozwala na zainstalowanie się w starszej wersji. Plik msi mówi, aby odinstalować program najpierw z Dodaj/Usuń programy. To nie jest dobre doświadczenie dla użytkownika. Jak mogę to zrobić, aby instalator najpierw usunął oprogramowanie, a następnie zainstalowało nową wersję?Instalowanie nowej wersji projektu wdrażania na starą wersję
Odpowiedz
To jest trudne, trzeba wykonać następujące kroki,
- Set usunąć poprzednią instalację jako prawdziwe
- Set Wykrywanie nowej wersji jako prawdziwe
- wersja Twojego C# programu muszą zwiększać z każdym wdrożeniu
- Powinieneś zmienić wersję swojego instalatora na jedną wyższą wersję, a poprosi Cię o zmianę kodu produktu, wybierz TAK.
- Nie zmieniaj swojego kodu aktualizacji, niech to będzie takie samo.
Jeśli nie wykonasz 3 kroku poprawnie, instalator nadal będzie instalował i zachowywał stary plik, a wersja pliku każdego pliku musi być nowa, jeśli zmieniłeś treść.
Myślę, że "Zdalna poprzednia instalacja" oznacza "RemovePreviousVersions" – CRice
Jakieś pomysły na to, jak to osiągnąć, bez zmiany kodu identyfikatora ProductCode? (drobna aktualizacja) http://stackoverflow.com/questions/3114637 – CRice
"Twoja wersja programu C# musi się zwiększać przy każdym wdrożeniu", co oznacza każdy dotknięty zespół, nieprawdaż? – mbx
konfiguracja zestawu właściwości projektu RemovePreviousVersions prawda
Ale trzeba użyć tego samego UpgradeCode w obu aplikacjach konfiguracji
+1 dzięki za wskazanie tego samego uaktualnionego kodu –
starałem się kilka scenariuszy, może to pomoże ktoś zaoszczędzić trochę czasu
Zmiana wersji złożenia ORAZ zmiany wersji instalatora projektu (zmienia się także zmiana kodu produktu) -> Instalacje aplikacji nad istniejącym -> biblioteki dll i wersje exe zostają zaktualizowane -> JEŚLI ścieżka zainstalowana jest inna, istniejące wstępnie zainstalowane pliki projektu są usuwane z miejsca, w którym zostały zainstalowane. (I plików dokonane od pozostać)
Jeśli zmiany Wersja montaż i zmiany wersji Instalator projektu (bez ProductCode Guid zmianie) -> Użytkownik jest proszony, aby ręcznie usunąć aplikację -> jeśli oni iść do przodu i wyjąć z panelu sterowania pierwszy , aplikacja może zostać zainstalowana, a biblioteki DLL i wersje exe zostaną zaktualizowane do nowej wersji
Jeśli zmienia się TYLKO Wersja Montażowa lub zmienia się tylko wersja instalatora projektu (bez zmiany kodu ProductCode) -> Użytkownik jest proszony o ręczne usunięcie aplikacji -> jeśli najpierw usuniesz z panelu sterowania, aplikacja może zostać zainstalowana, a biblioteka DLL i pliki exe zostaną zaktualizowane do nowej wersji
Jeśli TYLKO zmienia się wersja instalatora projektu (zmienia się również kod produktu) -> MSI przechodzi proces instalacji, ale biblioteki DLL i wersja exe nie zmieniają wersji - są one zgodne z wersją zestawu i są zastępowane plikami z tego samego zestawu Wersja kompilacji -> JEŚLI zainstalowana ścieżka jest inna, istniejące wstępnie zainstalowane pliki projektu są usuwane z miejsca, w którym zostały zainstalowane. (wszystkie pliki wykonane od dawna)
Jeśli zmieni się wersja instalatora projektu (zmienia się również kod produktu), a wersja zestawu jest niższa niż wersja zainstalowana -> Instalacja rozpocznie się, gdy użytkownik zostanie poinformowany, instalacja nie powiedzie się jako stara wersja.
pomocna. – Munavvar
Możesz to zrobić czasami po zainstalowaniu nowej wersji, stary produkt pozostanie taki sam.
Należy zmienić numer sekwencji RemoveExistingProducts, Musi to być harmonogram między Zainstaluj funkcję sprawdzania poprawności i InstallInitialize. Można to zrobić przez ORCA
ex InstallValidate = 1400 InstallInitialize = 1500
Następnie RemoveExistingProducts = 1450
Co to ma wspólnego z językiem programowania C#? –