INF-Install, overwrite

10/07/2014 - 14:46 von christian_dcomwm-ENTF | Report spam
Hallo,

eigentlich dache ich ja, den INF-Installer soweit im Griff zu haben, daß
nun dauerhaft alles reibungslos làuft. Leider doch nicht. Heute kam
erstmals die Meldung, daß "program.exe" schon vorhanden und evtl. neuer
ist mit der Frage, ob man sie trotzdem kopieren will.

Ausschnitt aus der setup.inf:

[DefaultInstall]
Copyfiles = Files.program

[Files.program]
program.dat
program.exe

[SourceDisksFiles]
program.dat=1
program.exe=1

[SourceDisksNames]
1 = %Product%,setup.cab

[DestinationDirs]
Files.program="49000"

Installiert wird mit:
%SystemRoot%\System32\RunDll32.Exe %SystemRoot%\System32\AdvPack.Dll,LaunchINFSectionEx setup.inf,,c:\setup.cab
über die vorhandene Installation.

Merkwürdig finde ich, daß nur bei der .exe gemeckert wird, die aber
definitiv neuer als die vorhandene ist und die vorhandene, aber gleich
alte .dat keine Meldung erzeugt.

Was kann dafür die Ursache sein? Sollte man das Flag 4 generell setzen?
(Aber warum ging's dann bisher auch ohne?)

cu,
Christian

PGP Key available.
 

Lesen sie die antworten

#1 Stefan Kanthak
10/07/2014 - 16:26 | Warnen spam
"Christian @Soemtron" schrieb:

Hallo,

eigentlich dache ich ja, den INF-Installer soweit im Griff zu haben, daß
nun dauerhaft alles reibungslos làuft. Leider doch nicht. Heute kam
erstmals die Meldung, daß "program.exe" schon vorhanden und evtl. neuer
ist mit der Frage, ob man sie trotzdem kopieren will.

Ausschnitt aus der setup.inf:

[DefaultInstall]
Copyfiles = Files.program

[Files.program]
program.dat
program.exe


,,,4 oder ,,,32 oder ,,,64

Wieso liest Du nicht die Dokumentation
<http://msdn.microsoft.com/library/f....aspx>?
Oder die Kommentare im jeweils ersten Abschnitt "copyfiles" eine meiner
VIELEN *.INF?

[...]

Merkwürdig finde ich, daß nur bei der .exe gemeckert wird, die aber
definitiv neuer als die vorhandene ist und die vorhandene, aber gleich
alte .dat keine Meldung erzeugt.



Die *.exe enthaelt eine "Version" Ressource, die *.dat nicht.
Siehe die Ausgabe von FILEVER.EXE program.*

Was kann dafür die Ursache sein?



Die jetzt (nicht mehr) vorhandene "Version" Ressource in einer der *.exe

Sollte man das Flag 4 generell setzen?
(Aber warum ging's dann bisher auch ohne?)



Weil eine oder beide *.exe bisher keine "Version" Ressource hatten,
oder immer neuere Versionen ueber aeltere Versionen kopiert wurden.

Stefan
[
Die unaufgeforderte Zusendung werbender E-Mails verstoesst gegen §823
Abs. 1 sowie §1004 Abs. 1 BGB und begruendet Anspruch auf Unterlassung.
Beschluss des OLG Bamberg vom 12.05.2005 (AZ: 1 U 143/04)

Ähnliche fragen