Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Key-File hat unverändert


3 replies to this topic

Michael.Hu

Michael.Hu
  • Full Members
  • 72 posts

Posted 30 November 2008 - 15:09

Hallo zusammen!

Ich versuche gerade die Überschreibungs-Regeln von MSI zu verstehen.
In diesem (einfachen) Fall verstehe ich aber gar nichts....

Ich mache folgendes :
1. Ein neues Basic-MSI Projekt (Version 1.0) erstellen
2. Eine neue Komponente mit 2 Text-Dateien (A und B ) erstellen
3. Die Text-Datei A definiere ich als Key-File.
4. Build 1.0 erstellen
5. Build 1.0 installieren

Danach mach ich folgendes.
1. Inhalt der Text-Datei B verändern.
2. ProductVersion auf 1.1 erhöhen.
3. Automatic Upgrade Item erstellen und den Build 1.0 dort angeben.
4. Build 1.1 erstellen
5. Folgende Meldung erscheint: Val0004: The file 'B.txt' in component 'AllOtherFiles' is different from the file in the previous package, but the key file for this component did not change. As a result, the changed file will not get installed...

Folgendes Resultat würde ich nach der Installation des Updates erwarten (sofern ich die Meldung Val0004 richtig interpretiert und die MSI-Regeln verstanden habe):
Es darf sich an den 2 Text-Dateien nichts verändert haben da ich Key-File A gar nicht verändert habe.

Folgendes Resultat trifft ein:
Bei File A steht folgender, richtiger Eintrag im Log-File:
Won't Overwrite;Won't patch;Existing file is unversioned and unmodified - hash matches source file

File B wird aber TROTZDEM überschrieben!!! Es steht folgende Meldung im Log-File:
Overwrite;Won't patch;Existing file is unversioned and unmodified - hash doesn't match source file


Bitte erklärt mir dieses Verhalten ich versteh grad gar nichts mehr! (ich verwende InstallShield 2009)


Vielen Dank für eure Hilfe!
Gruss
Michael

Edited by Michael.Hu, 30 November 2008 - 19:16.


Alibaba

Alibaba
  • Full Members
  • 78 posts

Posted 01 December 2008 - 10:49

mmh merkwürdig, was für einen Wert hat denn REINSTALLMODE?

Michael.Hu

Michael.Hu
  • Full Members
  • 72 posts

Posted 01 December 2008 - 12:02

Hi Alibaba!

Vielen Dank für die schnelle Antwort!
REINSTALLMODE hat den Wert "vomus".

Ich versteh grad gar nichts mehr... Hab soeben auch nochmal mit InstallShield 2008 probiert und genau die obigen, wirklich simplen, Schritte ausgeführt.
Ich erhalte zwar eine Validierungs-Warnung dass das File B.txt nicht überschrieben wird aber es wird trotzdem überschrieben!! Das versteh ich nicht!

Im Anhang findest du noch das komplette Log-File!

Hast du sonst noch eine Idee?

Attached Files


Edited by Michael.Hu, 01 December 2008 - 12:02.


Michael.Hu

Michael.Hu
  • Full Members
  • 72 posts

Posted 02 December 2008 - 07:59

Hallo zusammen!

Vielleich interessiert euch das (eine Antwort aus dem Acresso-Forum zum obigen Problem):

Unfortunately, VAL0004 incorrectly reports warnings/errors that it should not. The only cases that cause a component to not be reinstalled are as follows:
- The keyfile of the component in the new package has a lower version than the file already on the target machine.
- The keyfile of the component in the new package is unversioned and the existing file on the target machine is versioned.

All other cases will allow the component to reinstall (including if files in the component have changed but the keyfile has not).

Work order IOC-000074857 was submitted to correct the information reported by VAL0004 and will be resolved in a future release.

The runtime behavior that you are seeing is expected based on MSI component upgrade rules.