Estoy usando el instalador VS2008 (más una acción personalizada de Orca) para crear un instalador para mi producto .NET.¿Cómo puedo hacer que mi instalador VS2008 x86 instale ensamblajes x64 en x64?
Recientemente descubrí que uno de los ensamblajes de terceros que estaba usando es específico de x86 (ya que incluye algunos códigos nativos); por lo tanto, los clientes de x64 estaban bloqueados al inicio con errores sobre el ensamblaje que no eran apropiados para su plataforma.
Envié a dicho cliente una copia de la versión x64 de este ensamblado de otro fabricante, y le dije que simplemente lo copiara sobre el existente x86. Funcionó, dulce! Así que ahora solo necesito que el instalador haga esto por mí.
Esto realmente parece no trivial :(. Idealmente, solo quiero que el instalador (que sería x86, ya que puede ejecutarse en ambas plataformas) incluya tanto las versiones x86 como x64 de este ensamblado de terceros e instale el En otras palabras, quiero un único instalador que facilite la vida de mis usuarios.
Pensé que había funcionado, usando declaraciones condicionales de MSI y todo eso. Pero aparentemente no ... los proyectos de configuración de VS2008 no se compilará a menos que especifique "x86" o "x64". Si especifica x86, genera un error de compilación que indica que no puede incluir el ensamblado x64. Si especifica x64, el resultado no se puede ejecutar en una computadora x86 ¡Maldición!
Alguien debe haber tenido este problema antes. Lamentablemente, Google no es útil, ¡así que recurro a StackOverflow!
Gracias; esta es la mejor solución, creo. Cuando dice "se instalará un MSI x86 usando WOW64 en una plataforma x64", ¿significaría que mi aplicación terminaría siendo WOW64? Y supongo que eso es malo. Así que, al final, ¿podría tener algún tipo de boostrapper para elegir entre MSI? – Domenic
"¿significaría esto que mi aplicación terminaría siendo WOW64?" - Sí, significaría exactamente eso. Su aplicación se ejecutará como un proceso de 32 bits en una máquina de 64 bits porque está instalada en la carpeta "Archivos de programa (x86)". Un programa de arranque x86 es una solución que puedes usar para iniciar selectivamente el MSI apropiado. –