2010-05-15 5 views
9

Ich habe eine .NET-Anwendung, die auf x86 und x64 läuft. Ich hätte gerne ein 32-Bit-WiX-Installationsprogramm, das auf beiden Plattformen funktioniert, aber ich möchte, dass es in/Programme/statt/Programme/x64/auf 64-Bit-Betriebssystemen installiert wird.WiX-Installer, der immer im Verzeichnis "Programme" auf x86 und x64 installiert

Wie gehen Sie dabei vor?

Update:

war meine Idee, den Program oder ProgramFiles64Folder Wert auf meine eigene Eigenschaft zuweisen, je nachdem, ob es sich um eine 64-Bit-Umgebung war oder nicht, und dann auf das Verzeichnis, das Eigenschaftswert verwenden.

Ich habe sehr wenig Erfahrung mit WiX, wenn diese Idee überhaupt möglich ist, habe ich keine Ahnung. Wenn Sie das testen würden, um zu sehen, ob es sich um eine x64-Umgebung handelt? Wie würden Sie dann einen Eigenschaftswert aus ProgramFilesFolder oder ProgramFiles64Folder abhängig vom früheren 64-Bit-Umgebungstest zuweisen.

Jede Hilfe wird geschätzt!

+0

Haben Sie jemals eine Lösung gefunden? – dan9298

Antwort

2

ich dies nur gefunden, habe ich versucht, Ihre genaue Idee und keine Würfel. Sie können nicht wirklich auf ProgramFiles64Folder zugreifen, wenn Sie ein 64-Bit-Installationsprogramm ausführen.

Ich habe aufgegeben und bin gerade dabei, meine 64-Bit-Komponente auf ProgramFilesFolder zu installieren. Es ist nicht so schön ästhetisch, aber es funktioniert :)

0

MSI unterstützt keine 32-Bit-Pakete, die in 64-Bit-Verzeichnissen installiert werden.

+1

heh, wie du weißt, gibt es Wege.

+2

Es ist kein 32-Bit-Paket. Der Autor stellt fest, dass das Programm in .NET geschrieben ist (und ich vermute, er zielt auf jede CPU, da dies die Standardeinstellung und am häufigsten ist). Mit einer .NET-Programmdatei oder -Bibliothek, die auf ANY CPU abzielt: Auf einem 32-Bit-Computer generiert der JIT-Compiler bei Ausführung 32-Bit-Code und auf einer 64-Bit-Maschine JIT Der Compiler generiert 64-Bit-Code zur Ausführung. Es macht durchaus Sinn, dass er es immer unter "C: \ Programme" und niemals "C: \ Programme (x86)" installieren möchte. – BrainSlugs83

+4

Windows Installer unterstützt das AnyCPU-Konzept nicht; Pakete sind entweder explizit 32-Bit oder explizit 64-Bit. –

Verwandte Themen