Updates

Fragen zum AKInstallerMSI
Antworten
LaraC
Beiträge: 25
Registriert: 23.04.2007, 17:34

Updates

Beitrag von LaraC »

Hallo,

gibt es eine kurze Erklärung, welche Einstellungen man vornehmen muss, damit eine simple Anwendung mit ein paar Dateien upgedatet werden kannn?

Setup wurde mit dem AKInstallerMSI erstellt. Installation funktionierte auch einwandfrei. Ich bekomme es aber nicht hin, die nun vorhandenen Dateien upzudaten. Das Projekt ist dasselbe, nur die alten Dateien sollen mit den neuen ausgetauscht werden. Das MSI-Paket soll dann sowohl für Updates als auch für Neuinstallationen gebraucht werden.
Habe auch schon die Möglichkeiten des Bootstrappers genutzt. Allerdings ohne Resultat.
Als OS nutze ich Vista.

Gruss
Andreas Kapust
Administrator
Beiträge: 1085
Registriert: 29.02.2004, 15:51
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Andreas Kapust »

Guten Tag!

Da sie nicht genau schreiben, was passiert, zwei Vermutungen:

1: Handelt es sich dabei um versionierte Dateien? Also Dateien, bei denen eine Versionsnummer ausgelesen werden kann.

Falls nicht, liegt es wahrscheinlich daran. Hier gibt es die Möglichkeit [ProductVersion] oder [FileDate] zu nutzen (siehe Anleitung).

2: Oder ist es die Fehlermeldung: Eine andere Version ist breits installiert?
Hier finden Sie einiges in der Hilfe unter Information -> Updates.
Mit freundlichen Grüßen,
AKApplications, Andreas Kapust
LaraC
Beiträge: 25
Registriert: 23.04.2007, 17:34

Beitrag von LaraC »

Hallo, danke für die Antwort. Hier meine Vorgehensweise:

1. Leeres MSI-Projekt mit Default Einstellungen
2. Änderung von Installationstyp 1 auf 0. Checkbox "Vistarechte" deaktiviert.
3. Bootstrapper verwenden. Einstellungen Bootstrapper für MSI:
Checkbox "MSISetupFile schon installiert" aktiviert und Update Parameter: REINSTALL=ALL REINSTALLMODE=vomus
4. Auslieferung: Setup in Zip verpacken deaktivieren
5. Unterfeature anlegen
6. Dateien & Verzeichnisse:
-Eine EXE mit Version 0.2.5 per D&D ins INSTALLDIR holen. Im PopUp-Dialog nur das Unterfeature auswählen.
-Ein TXT-File auf selbe Weise ins INSTALLDIR holen.
7. Projekt speichern.
8. Über "Setup-Erstellen" wird "Setup.exe" und "Setup.MSI" erstellt.
9. Setup ausführen und alles ist gut.

Jetzt soll die EXE mit einer neueren Version 0.2.7 und das TXT-File mit angepassten Inhalt erneuert werden.
Ich bin folgendermaßen vorgegangen:

a. Dateien & Verzeichnisse: die EXE und das TXT-File gelöscht. Dann neue EXE und TXT-File per D&D ins INSTALLDIR gezogen.
Im PopUp-Dialog wieder nur das Unterfeature auswählen, Dialog "Passende Pfadvariablen" mit "NEIN" schliessen.
b. Auf Produktseite die Produktversion 1.0.0 auf 1.1.0 gesetzt.
c. Projekt speichern und "Setup Erstellen".
d. Die neu erstellte Setup.exe ausführen. Es kommt Setup-Dialog "Fortsetzen des Mein Produkt Setup Assistent". Setup durchklicken.
e. Ergebnis:die alte EXE und das TXT-File wurden nicht erneuert.

Wie muss ich vorgehen, damit das funktioniert?

Gruss
Andreas Kapust
Administrator
Beiträge: 1085
Registriert: 29.02.2004, 15:51
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Andreas Kapust »

Guten Tag!

Ich überspringe den ersten Part (V0.2.5 , erstes Setup) hier ist alles ok.
Der Fehler kommt zustande beim Updaten (Part 2) . Beim Rauswerfen und neu einfügen werden für die neuen Dateien auch neue GUID erzeugt, was bedeutet neue Komponenten.
Komponenten können, wie vielleicht bekannt, aus mehreren Dingen bestehen, z. B. aus Registry-Einträgen UND Dateien ++.
Die kleinste Einheit im Windows Installer sind nicht Dateien, sondern Komponenten!
Diese werden über eindeutige GUIDs erkannt. Wird also ein Eintrag entfernt (Exe V1. 0) und anschließend (Exe V2.0) neu eingefügt, sind dieses zwei völlig unterschiedliche Komponenten.
Bei einem Update ändert sich im Projekt (STPM-Datei) nichts außer der Produktversion. Alle Einstellungen bleiben gleich (außer Sie fügen weitere Dateien hinzu).

Testszenario:
-Leeres-Projekt
-Dateien-Seite -> Test.txt per D&D einfügen
-Speichern unter 1.stpm
-Erstellen und installieren
-[INSTALLDIR] Test.txt anschauen
-Text.txt im Quellverzeichnis (nicht [INSTALLDIR]) ändern
- Produktversion auf 1.1
-Speichern unter 2.stpm
-Erstellen und installieren
[INSTALLDIR] Test.txt hat sich geändert.

Fehlerquellen:
Nach der Installation von V1.0 wird [INSTALLDIR] Test.txt geändert. So würde V1.1 [INSTALLDIR] Test.txt nicht aktualisieren da Test.txt unversioniert ist.

Abhilfe:
Künstliche Versionierung: [ProductVersion] oder [FileDate] als Version benutzen (siehe Anleitung).

Ich hoffe, ich konnte Ihnen damit helfen.
Mit freundlichen Grüßen,
AKApplications, Andreas Kapust
LaraC
Beiträge: 25
Registriert: 23.04.2007, 17:34

Beitrag von LaraC »

Hallo,

danke für die Antwort.
Mit der beschriebenen Vorgehensweise ist mir erstmal geholfen.

Vielen Dank!

Gruss
Antworten