Wix3で最小構成のインストーラーを作成する - Wixを利用して何もしないインストーラーを作成する

Wix3で最小構成のインストーラーを作成する手順を紹介します。

事前準備

WiX Toolset v3のインストール

WiX Toolset v3をインストールします。インストール手順の詳細はこちらの記事を参照してください。

WiX Toolset Visual Studio 2017 Extension のインストール

WiX Toolset Visual Studio 2017 Extension をインストールします。インストール手順の詳細はこちらの記事を参照してください。

手順

Visual Studio 2017を起動します。
Wix3で最小構成のインストーラーを作成する - Wixを利用して何もしないインストーラーを作成する:画像1

[ファイル]メニューの[新規作成]の[プロジェクト]の項目をクリックします。
Wix3で最小構成のインストーラーを作成する - Wixを利用して何もしないインストーラーを作成する:画像2

[新しいプロジェクト]ダイアログが表示されます。左側のツリービューで[WiX Toolset]のノード内の[v3]ノードをクリックして選択します。下図の画面が表示されます。右側の項目一覧から、[Setup Project]をクリックして選択します。[名前]欄にプロジェクトの名称を入力します。今回はデフォルトのままとしました。設定ができたら[OK]ボタンをクリックします。
Wix3で最小構成のインストーラーを作成する - Wixを利用して何もしないインストーラーを作成する:画像3

右側のソリューションエクスプローラから"Product.wxs"ファイルを選択し開きます。
Wix3で最小構成のインストーラーを作成する - Wixを利用して何もしないインストーラーを作成する:画像4

Product.wxs
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Product Id="*" Name="SetupProject1" Language="1033" Version="1.0.0.0" Manufacturer="" UpgradeCode="ad714548-35da-4122-b92e-f4cff276ffc7">
    <Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />

    <MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
    <MediaTemplate />

    <Feature Id="ProductFeature" Title="SetupProject1" Level="1">
      <ComponentGroupRef Id="ProductComponents" />
    </Feature>
  </Product>

  <Fragment>
    <Directory Id="TARGETDIR" Name="SourceDir">
      <Directory Id="ProgramFilesFolder">
        <Directory Id="INSTALLFOLDER" Name="SetupProject1" />
      </Directory>
    </Directory>
  </Fragment>

  <Fragment>
    <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
      <!-- TODO: Remove the comments around this Component element and the ComponentRef below in order to add resources to this installer. -->
      <!-- <Component Id="ProductComponent"> -->
        <!-- TODO: Insert files, registry keys, and other resources here. -->
      <!-- </Component> -->
    </ComponentGroup>
  </Fragment>
</Wix>



  <Product Id="*" Name="SetupProject1" Language="1033" Version="1.0.0.0" Manufacturer="" UpgradeCode="ad714548-35da-4122-b92e-f4cff276ffc7">
のManufacturer の値が空欄だと、ビルドが通らないため、Manufacturerに値を設定します。

変更後
  <Product Id="*" Name="SetupProject1" Language="1033" Version="1.0.0.0" Manufacturer="iPentec" UpgradeCode="ad714548-35da-4122-b92e-f4cff276ffc7">


プロジェクトをビルドします。[ビルド]メニューの[ソリューションのビルド]をクリックします。
Wix3で最小構成のインストーラーを作成する - Wixを利用して何もしないインストーラーを作成する:画像5

ビルドが完了します。ワーニングが1つ表示されます。
Wix3で最小構成のインストーラーを作成する - Wixを利用して何もしないインストーラーを作成する:画像6

"ICE71: The Media table has no entries."のワーニングが表示されます。インストールされるファイルが1つもないためだと考えられます。
Wix3で最小構成のインストーラーを作成する - Wixを利用して何もしないインストーラーを作成する:画像7

ソリューションファイルのあるディレクトリをエクスプローラで開きます。
Wix3で最小構成のインストーラーを作成する - Wixを利用して何もしないインストーラーを作成する:画像8

プロジェクトファイル名のディレクトリ内の"bin"ディレクトリ内の"debug"ディレクトリを開きます。
Wix3で最小構成のインストーラーを作成する - Wixを利用して何もしないインストーラーを作成する:画像9
Wix3で最小構成のインストーラーを作成する - Wixを利用して何もしないインストーラーを作成する:画像10

ビルドされた、msiファイルが配置されています。
Wix3で最小構成のインストーラーを作成する - Wixを利用して何もしないインストーラーを作成する:画像11

msiファイルを実行します。下図のダイアログが表示され、その後ダイアログが閉じられるだけの動作になります。
[プログラムのアンインストールまたは変更]の画面にも追加されません。
Wix3で最小構成のインストーラーを作成する - Wixを利用して何もしないインストーラーを作成する:画像12

Wixを利用して何もしないインストーラーが作成できました。

AuthorPortraitAlt
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
作成日: 2017-03-09
Copyright © 1995–2025 iPentec all rights reserverd.