Een installatieprogramma maken om een 64-bits toepassing te installeren

Aanmaakdatum van pagina :

Milieu

Visual Studio
  • Visual Studio Community 2017
  • Visual Studio Community 2019
WiX-toolset
3.11.2

∙ Werkt in andere versies, maar is onbevestigd

In eerste instantie

WiX installeert het als een 32-bits toepassing, tenzij expliciet opgegeven. Wanneer u bijvoorbeeld op een 64-bits besturingssysteem installeert, wordt het geïnstalleerd in de map C:\Program Files (x86)\.

In deze sectie worden de instellingen beschreven voor het installeren als een 64-bits toepassing. Stel dat u al een WiX-project hebt gemaakt en dat u een installatieprogramma hebt gemaakt.

By the way, als je een 64-bits applicatie te installeren, is het een 32-bits applicatie of een 64-bits applicatie? Omdat het afhangt van het bestand dat ik opgenomen, denk dan dat de instelling van de installer kant aan de laatste. U ook expliciet de installatie op 32-bits besturingssysteem voorkomen door de installer 64bit te ondersteunen.

Voorbereiding

  • Stel dat u een installatieprogramma hebt gemaakt in WiX.

Een project maken

Maak een nieuw project voor de 64-bits installateur. Als u een installatie van 32 bits en 64-bits moet maken, Het is handig om het tegelijkertijd te kunnen bouwen door het te verdelen in een apart project van 32bit.

image

image

image

Zodra u een project hebt gemaakt, stelt u het project in zoals de 32bit-versie, en vervolgens Kopieer de bestanden die in de 32-bits versie zijn gemaakt naar het 64-bits project.

image

In de 64-bits versie heb je bijna hetzelfde bestand nodig als de 32bit-versie, dus er is een manier om het bestand te delen. Omdat de verklaring een beetje ingewikkeld wordt, zal ik deze keer sparen.

64bit-instellingen voor installatieprojecten

Als u een installatieprogramma wilt maken voor een 64-bits toepassing, wijzigt u de projectinstellingen. Als u de volgende A- of B-patronen instelt, u dit doen.

Een andere manier om x64 op te geven voor het kenmerk Platform van het pakket is Het is momenteel afgeschaft en heeft geen effect wanneer ingesteld, en u moet de 64bit parameter voor elk bestand worden geïnstalleerd. Ik raad het niet aan omdat het inefficiënt is.

A. X64-platform toevoegen aan project

In eerste instantie heeft het project alleen een x86-buildconfiguratie, dus voeg x64 toe.

Selecteer het menu 'Bouwen' en 'Configuratiebeheer'.

image

Maak de oplossingsconfiguratie Release en selecteer Nieuw op het x64-projectplatform.

image

Maak geen nieuwe platforms "x64", "x86" bronnen en nieuwe oplossingsplatforms.

image

Wanneer u het toevoegt, opent u het platform opnieuw. Selecteer Bewerken. X64 x64 staat overigens niet direct nadat u deze hebt toegevoegd, maar kan wel worden toegevoegd aan de lijst wanneer u het scherm sluit en vernieuwt.

image

Verwijder x86 vanwege een wix-projectstoring waardoor de eerste selectie niet overschakelt naar x64 en x86. Dit kan echter ook een probleem zijn en zelfs als x86 wordt gewist, zal het herrijzen. Als u ervoor wilt zorgen dat u het verwijdert, is het een goed idee om het projectbestand "wixproj" in een teksteditor te openen en de code te verwijderen.

image

Als het lijkt op de figuur hieronder, is het OK. Het actieve platform rechtsboven blijft x86, dus als je nieuwsgierig bent, hernoemen in bewerken.

image

B. Toegevoegd "-arch x64" aan de compilatie parameters.

Klik met de rechtermuisknop op het 64bit-installatieproject om Eigenschappen te openen.

image

Selecteer Gereedschapsinstellingen op het tabblad Links en wijzig de configuratie in Vrijgeven. Voer in Aanvullende parameters -boog x64 in Compiler in.

image

Maak van de doelmap een 64-bits map

Open Product.wxs.

Vervang de volgende "Directory Id="ProgramFilesFolder" door "Directory Id="ProgramFiles64Folder".

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

De bestands- of mapnaam van een snelkoppeling wijzigen in het menu Start

Niet vereist, maar als u de 32bit-instellingen kopieert zoals ze zijn, u ze rechtstreeks kopiëren in de 32-bits en 64-bits startmenu's voor toepassingen. De snelkoppeling wordt gedekt.

Verander het als dat nodig is.

<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 in het algemeen

Bouw in deze toestand om ervoor te zorgen dat het installatieprogramma zonder fouten wordt gemaakt. Nadat u in een 64-bits besturingssysteemomgeving hebt geïnstalleerd, controleert u of mappen en bestanden zijn gemaakt in C:\Program Files\.

image

Controleer ook of het mislukt wanneer u probeert te installeren in een 32bit OS-omgeving.

image