Hallo,
ich soll ein Setup für ein Produkt (ein Addin für Microsoft Dynamics NAV) erstellen, welches aus einem Client- und einem Serverteil besteht. Der Clientteil kann auf x86 und x64 Systemen laufen, der Serverteil ausschließlich auf x64 Systemen.
Es soll nur ein einziges Setup (Setup.exe) geben, welches,
- wenn man es auf einem x86 System startet, nur den Clientteil installiert.
- wenn man es auf einem x64 System startet, eine Auswahl anzeigt, ob man nur den Clientteil, nur den Serverteil, oder beides installieren möchte, und dann gemäß der getroffenen Auswahl die Installation durchführt.
Punkt 2. habe ich realisiert; funktioniert prima.
Die Zielordner werden per System Search aus der Registry ermittelt und liegen unter folgenden Wurzelpfaden:
x64 System:
- Clientteil: C:\Programme(x86)\...
- Serverteil: C:\Programme\...
x86 System:
- Clientteil: C:\Programme\...
- Serverteil: --
Auf einem x64 System muß ich also jeweils einen Key aus dem x86 und x64 Teil der Registry erfragen.
Je nach dem aber, was ich als Template Summary angebe, passiert nun folgendes:
- Intel;0 oder ;0: Das Setup kann auf beiden Systemen gestartet werden, aber auf einem x64 System findet der System Search für den Serverteil nichts; die entsprechende Variable bleibt leer, obwohl im System Search Wizard das Häkchen bei Search the 64-bit portion of the Registry gesetzt ist.
- x64;0: Auf einem x64 System funktioniert alles prima, aber auf einem x86 System kann das Setup natürlich nicht gestartet werden.
Habt Ihr einen Tip, was ich falsch mache, oder geht das generell nicht?
Vielen Dank für Eure Hilfe!
Alfred