Cree un instalador para instalar una aplicación de 64 bits

Fecha de creación de la página :

Ambiente

Visual Studio
  • Visual Studio Community 2017
  • Visual Studio Community 2019
WiX Toolset
3.11.2

• Funciona en otras versiones, pero no está confirmado

Al principio

WiX lo instala como una aplicación de 32 bits a menos que se especifique explícitamente. Por ejemplo, cuando se instala en un sistema operativo de 64 bits, se instala en la carpeta C:-Archivos de programa (x86).

En esta sección se describe la configuración para la instalación como una aplicación de 64 bits. Supongamos que ya ha creado un proyecto WiX y que ha creado un instalador.

Por cierto, si instala una aplicación de 64 bits, ¿es una aplicación de 32 bits o una aplicación de 64 bits? Debido a que depende del archivo que he incluido, por favor piense que la configuración del lado del instalador hasta el último. También puede impedir explícitamente la instalación en el sistema operativo de 32 bits al admitir el instalador de 64 bits.

Pre-preparación

  • Supongamos que ha creado un instalador en WiX.

Crear un proyecto

Cree un nuevo proyecto para el instalador de 64 bits. Si necesita crear un instalador de 32 y 64 bits, Es útil poder construirlo al mismo tiempo dividiéndolo en un proyecto separado de 32bit.

image

image

image

Una vez que haya creado un proyecto, configurará el proyecto como lo haría con la versión de 32 bits y, a continuación, Copie los archivos creados en la versión de 32 bits en el proyecto de 64 bits.

image

En la versión de 64 bits, necesitarás casi el mismo archivo que la versión de 32 bits, por lo que hay una manera de compartir el archivo. Debido a que la explicación se vuelve un poco complicada, voy a ahorrar esta vez.

Configuración de 64 bits para proyectos de instalación

Para crear un instalador para una aplicación de 64 bits, cambie la configuración del proyecto. Si establece los siguientes patrones A o B, puede hacerlo.

Otra forma de especificar x64 para el atributo Platform del Paquete es Actualmente está en desuso y no tiene ningún efecto cuando se establece, y debe establecer el parámetro de 64 bits para cada archivo que se va a instalar. No lo recomiendo porque es ineficiente.

A. Añadir plataforma x64 al proyecto

Inicialmente, el proyecto solo tiene una configuración de compilación x86, así que agregue x64.

Seleccione el menú "Compilar" y "Administrador de configuración".

image

Realice la versión de configuración de la solución y seleccione Nuevo en la plataforma de proyecto x64.

image

No cree nuevas plataformas "x64", fuentes "x86" y nuevas plataformas de soluciones.

image

Cuando lo agregue, abra la plataforma de nuevo. Seleccione Editar. Por cierto, x64 x64 puede no estar en la lista inmediatamente después de agregarlo, pero puede agregarse a la lista cuando se cierra y actualiza la pantalla.

image

Quite x86 debido a un fallo de proyecto wix que hace que la selección inicial no cambie a x64 y x86. Sin embargo, esto también puede ser un problema e incluso si x86 se borra, resucitará. Si desea asegurarse de eliminarlo, es una buena idea abrir el archivo de proyecto "wixproj" en un editor de texto y eliminar el código.

image

Si se parece a la figura de abajo, está bien. La plataforma activa en la parte superior derecha sigue siendo x86, así que si tienes curiosidad, cámbiale el nombre en la edición.

image

B. Añadido "-arch x64" a los parámetros de compilación.

Haga clic con el botón derecho en el proyecto del instalador de 64 bits para abrir Propiedades.

image

Seleccione Configuración de herramienta en la pestaña izquierda y cambie la configuración a Liberar. En Parámetros adicionales, escriba -arch x64 en Compilador.

image

Convierta la carpeta de destino en una carpeta de 64 bits

Abra Product.wxs.

Sustituya el siguiente "Id de directorio"ProgramFilesFolder" por "Directory Id"ProgramFiles64Folder".

<Wix>
	<Fragment>
		<Directory Id="TARGETDIR" Name="SourceDir">
			<Directory Id="ProgramFiles64Folder">

Cambiar el nombre del archivo o carpeta de un acceso directo en el menú Inicio

No es necesario, pero si copia la configuración de 32 bits tal como está, puede copiarlos directamente en los menús de inicio de la aplicación de 32 bits y 64 bits. El acceso directo se cubrirá.

Cámbielo según sea necesario.

<Wix>
  <Fragment>
    <Directory Id="TARGETDIR" Name="SourceDir">
      <Directory Id="ProgramFiles64Folder">
        <Directory Id="INSTALLFOLDER" Name="LittleSaviorTrial">
          <Component Win64="yes" Id="LITTLESAVIORTRIAL.EXE" DiskId="1" Guid="E382FBDF-73E0-4511-A73D-E9798449F30E">
            <File Id="LITTLESAVIORTRIAL.EXE" Name="LittleSaviorTrial.exe" Source="LittleSaviorTrial\LittleSaviorTrial.exe" KeyPath="yes">
              <Shortcut Id="LITTLESAVIORTRIAL.EXE_shortcut" Name="ここのファイル名を 64bit 版に変える" Directory="ProgramMenuDir" WorkingDirectory="INSTALLDIR" Icon="LITTLESAVIOR.ICO" IconIndex="0" Advertise="yes" />
  <!-- 中略 -->
  <Directory Id="ProgramMenuFolder">
    <Directory Id="ProgramMenuDir" Name="ここのフォルダ名を 64bit 版に変える">
      <Component Id="ProgramMenuDir" Guid="5A73CC85-A1B3-4409-8C4F-3E8E888A7167">
        <RemoveFolder Id="ProgramMenuDir" On="uninstall" />

Product.wxs en general

Compile en este estado para asegurarse de que el instalador se crea sin errores. Después de instalar en un entorno de som de 64 bits, compruebe que las carpetas y los archivos se crean en C:.

image

Además, compruebe si se produce un error cuando intenta instalar en un entorno de sistema operativo de 32 bits.

image