Tworzenie instalatora w celu zainstalowania aplikacji 64-bitowej

Data utworzenia strony :

Środowiska

Visual Studio
  • Społeczność programu Visual Studio 2017
  • Społeczność programu Visual Studio 2019
Zestaw narzędzi WiX
3.11.2

※ Działa w innych wersjach, ale jest niepotwierdzony

Na początku

WiX instaluje go jako aplikację 32-bitową, chyba że jawnie określono. Na przykład po zainstalowaniu na 64-bitowym os, jest on zainstalowany w folderze C:\Program Files (x86)\folder.

W tej sekcji opisano ustawienia instalacji jako aplikacji 64-bitowej. Załóżmy, że utworzono już projekt WiX i utworzono instalatora.

Nawiasem mówiąc, jeśli zainstalujesz aplikację 64-bitową, czy jest to aplikacja 32-bitowa czy 64-bitowa? Ponieważ to zależy od pliku, który włączyłem, proszę pomyśleć, że ustawienie strony instalatora do ostatniego. Można również jawnie uniemożliwić instalację w 32-bitowym os, obsługując instalator 64bit.

Przygotowanie wstępne

  • Załóżmy, że utworzono instalator w WiX.

Tworzenie projektu

Utwórz nowy projekt dla instalatora 64-bitowego. Jeśli chcesz utworzyć instalator 32-bitowy i 64-bitowy, Warto móc zbudować go w tym samym czasie, dzieląc go na oddzielny projekt z 32bit.

image

image

image

Po utworzeniu projektu skonfigurujesz projekt tak, jak wersja 32-bitowa, a następnie Skopiuj pliki utworzone w wersji 32-bitowej do projektu 64-bitowego.

image

W wersji 64-bitowej potrzebujesz prawie tego samego pliku co wersja 32-bitowa, więc istnieje sposób na udostępnienie pliku. Ponieważ wyjaśnienie staje się nieco skomplikowane, tym razem oszczędzę.

Ustawienia 64-bitowe dla projektów instalatora

Aby utworzyć instalator dla aplikacji 64-bitowej, zmień ustawienia projektu. Jeśli ustawisz następujące wzorce A lub B, możesz to zrobić.

Innym sposobem określenia x64 dla atrybutu Platformy pakietu jest Jest obecnie przestarzały i nie ma wpływu po ustawieniu i należy ustawić parametr 64-bitowy dla każdego pliku, który ma zostać zainstalowany. Nie polecam go, ponieważ jest nieefektywny.

A. Dodaj platformę x64 do projektu

Początkowo projekt ma tylko konfigurację kompilacji x86, więc dodaj x64.

Wybierz menu "Build" i "Menedżer konfiguracji".

image

Zwolnij konfigurację rozwiązania i wybierz pozycję Nowy z platformy projektu x64.

image

Nie należy tworzyć nowych platform "x64", "x86" źródeł i nowych platform rozwiązań.

image

Po dodaniu go ponownie otwórz platformę. Wybierz pozycję Edytuj. Nawiasem mówiąc, x64 x64 może nie znajdować się na liście natychmiast po dodaniu, ale może zostać dodany do listy po zamknięciu i odświeżeniu ekranu.

image

Usuń x86 z powodu usterki projektu wix, która powoduje, że początkowy wybór nie przełącza się na x64 i x86. Jednak może to być również problem i nawet jeśli x86 zostanie wymazany, zostanie zmartwychwstały. Jeśli chcesz się upewnić, że go usunąć, to jest dobry pomysł, aby otworzyć plik projektu "wixproj" w edytorze tekstu i usunąć kod.

image

Jeśli wygląda na to, że poniższy rysunek, jest OK. Aktywna platforma w prawym górnym rogu pozostaje x86, więc jeśli jesteś ciekawy, zmień jej nazwę w edycji.

image

B. Dodano "-arch x64" do parametrów kompilacji.

Kliknij prawym przyciskiem myszy projekt instalatora 64-bitowego, aby otworzyć polecenie Właściwości.

image

Wybierz pozycję Ustawienia narzędzia na lewej karcie i zmień konfigurację na Zwolnij. W obszarze Parametry dodatkowe wprowadź -arch x64 w kompilatorze.

image

Nadaj folderowi docelowemu folder 64-bitowy

Otwórz plik Product.wxs.

Zastąp następujące "Identyfikator katalogu="ProgramFilesFolder" na "Directory Id="ProgramFiles64Folder".

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

Zmienianie nazwy pliku lub folderu skrótu w menu Start

Nie jest to wymagane, ale jeśli skopiujesz ustawienia 32-bitowe w ich stylu, możesz skopiować je bezpośrednio w 32-bitowych i 64-bitowych menu startowych aplikacji. Skrót zostanie zakryty.

Zmień go w razie potrzeby.

<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 ogółem

Kompilacja w tym stanie, aby upewnić się, że instalator jest tworzony bez błędów. Po zainstalowaniu w 64-bitowym środowisku systemu operacyjnego sprawdź, czy foldery i pliki są tworzone w języku C:\Program Files\.

image

Sprawdź również, czy nie powiedzie się podczas próby zainstalowania w 32-bitowym środowisku systemu operacyjnego.

image