Anzeige

C# Setup Installer mit Update oder Deinstallationsfunktion


Majo

Grünschnabel
#1
Moin zusammen,
:coffee:

ich habe mal wieder ein kleines Problem.

Ich habe eine C# Anwendung in der ich ein "Setup Project" eingebunden habe, damit ich die Anwerbung ordentlich installieren kann.
Dieses Setup ist so konfiguriert, dass die Anwendung im Autostart Ordner hinterlegt wird, da sie beim Systemstart ausgeführt werden soll.
Das läuft auch soweit.

Nun möchte ich aber, wenn ich eine neue Version der Setup Exe erstell habe und die Installation ausführe, dass der Installer die alte Version deinstalliert.
Führe ich die Installation über Visual Studio aus dann geht das, aber die Installation über die Setupdatei, kann die alte Version nicht deinstallieren.

Leider habe ich bisher nichts im Netz gefunden, was dies erklären würde.

Als zweites ist mir aufgefallen, dass der Autostarteintrag den man im Taskmanager sehen kann, verknüpft ist zum Ordner Windows Installer und dass er einen Alphanummerischen Namen trägt (z.B. _98A98ASD98.exe)
Da die anderen Programme im Autostart als Ziel das Programmverzeichnis haben, denke ich, dass ich hier was ordentlich falsch mache. :D

Vielleicht hat jemand einen Tipp, das wäre fantastisch, denn das Problem mit dem deinstallieren habe ich bei anderen Programmen auch.


Danke schon mal und Gruß (y)
 

Spyke

Capoeirista
Premium-User
#2
Schau mal nach in den Einstellungen des Setup Projektes.
Da müsste es 2 Einträge für eine Versionsnummer geben,
wenn eine der beiden geändert wird ändert sich auch die zugehörige Projekt GUID des Setups.
Diese Guid sollte gleich bleiben.
Eventuell liegts da dran.
(Könnte auch sein das es nur ein Versionseintrag gibt und gefragt wird ob die Guid angepasst werden soll)
 

Majo

Grünschnabel
#3
hi,

danke schon mal für die Antwort.
Also ich habe einen
ProductCode mit mehreren Stellen in geschweiften Klammern
UpgradeCode mit mehreren Stellen in geschweiften Klammern
Version 1.0.4001

Eine GUI im SetupProject finde ich gar nicht und das Feld GUI in dem Project das mein Programm ist, ist leer (Projekt\Einstellungen\Anwendung\Assemblyinfomationen)

Ich habe das Projekt neu erstellt im Setup Projekt die Abhängigkeiten aktualisiert und es neu erstellt. Die Nummern bleiben immer gleich. Allerdings sind Product & Upgrade Code unterschiedlich.

Der durch das Setup erstellte Ordner unter System\Windows\Installer\
hat als Namen den ProductCode. Hier liegt die Datei die im Taskmanager unter Autostart angezeigt werden. (_123389412983471283.exe) Diese ändert sich scheinbar, da hier 3 verschiedene liegen.

Was mir aber noch aufgefallen ist, die durch das Setup erstellen Verknüpfungen haben im Ziel nur die EXE stehen und im Ausführen den Programme Pfad. Normalerweise solte im Feld Ziel doch der gesamte Pfad zur Exe stehen.
 
Anzeige
Anzeige