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

Registrierungseintrag RefCount


2 replies to this topic

ANo

ANo
  • Full Members
  • 179 posts

Posted 03 April 2013 - 16:24

Hallo IS-Gemeinde,
ich habe eine Frage wegen des Flags "Shared" für Komponenten.


Wir installieren unter anderem Dateien nach
"C:\Program Files (x86)\Common Files\Camera" z.B. "PAL.wdm".

 

Für diese Komponente habe ich das Flag "Shared" gesetzt.
Damit wird auf einem 64bit-PC in der Registrierung ein Eintrag erzeugt:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\SharedDLLs

mit

C:\Program Files (x86)\Common Files\Camera\PAL.wdm = 1

 

Jetzt stelle ich unsere Setups auf 64bit um. Ich behalte die Komponente bei, ich mache keine Änderung.
Aber den Installationspfad setze ich für 64bit.

 

Bei der Installation eines 64bit Setups wird die Datei auch richtigerweise installiert unter:
"C:\Program Files\Common Files\Camera

 

Damit wird auf einem 64bit-PC in der Registrierung ein Eintrag erzeugt:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\SharedDLLs

mit

C:\Program Files\Common Files\Camera\PAL.wdm = 1

 

Mich irritiert jetzt der Eintrag in der Registrierung:
Unter einem 32bit-Registrierungszweig finde ich den Eintrag mit einem 64bit-Pfad.

 

Meine Frage(n) dazu:

Wie ist die richtige Vorgehensweise für diese Komponenten bzw. Dateien die keine DLLs sind,
wenn man ein 32bit und ein 64bit-Setup machen möchte?

 

A) Führt man diese Komponenten auch 2x im IS-Projekt (eine 32bit-Komponente - und eine 64bit-Komponente)?
   <-- Dann hat man die Registrierungseinträge auch sauber getrennt
  
B) Benutzt man das Flag "Shared" für diese Dateien nicht?
   <-- Dann gibt es auch keine Einträge in der Registrierung. Funktioniert aber auch.
  
C) Einfach ignorieren, das ist halt so? Funktionieren tut es. Sieht nur nicht schön aus.

 

Bin dankbar Dank für jeden Hinweis
ANo



Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 03 April 2013 - 19:18

Das "Shared" Flag brauchst du nur, wenn die Datei evtl. auch von einem anderen nicht-MSI Setup installiert wird. Denn MSI hat dafür einen eigenen Mechanismus, das Shared Flag ist nur für die Kompatibilität mit "legacy" Installern erforderlich.

64-Bit Komponenten brauchen eine eigene ComponentId GUID und das 64-Bit-Flag muss gesetzt sein.



ANo

ANo
  • Full Members
  • 179 posts

Posted 04 April 2013 - 15:38

Hallo Stefan,
vielen Dank für die Info - hat mir geholfen.

 

Gruß

ANo