
目次
サンプル定義ファイル
WiX の導入


使うツールは "candle.exe" と "light.exe" の2つで、コマンドラインからの起動になるため、"C:\Program Files (x86)\WiX Toolset v3.11\bin" にPATHを通しておく。
WixEdit
インストーラー作成用XMLファイル
拡張子は .wxs で保存する。
解説:変数定義
1: <?xml version="1.0" encoding="utf-8"?>
2: <!-- WiXサンプル定義ファイル -->
3: <!-- 参考サイト https://www.pahoo.org/e-soul/webtech/cpp01/cpp01-01-02.shtm -->
4: <!-- 変数定義 -->
5: <?define GUID_Product = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ?>
6: <?define GUID_MenuAppComponent = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ?>
7: <?define GUID_ApplicationComponent = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ?>
8: <?define GUID_EtcComponent = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ?>
9:
10: <?define GUID_Upgrade = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ?>
11: <?define GUID_MenuPahooComponent = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ?>
12:
13: <?define ProductName = "googlenewswin" ?>
14: <?define ProductNameJP = "Googleニュース検索" ?>
15: <?define ProductVersion = "1.1" ?>
16: <?define MinumumVersion = "1.0" ?>
17: <?define ProductComment = "インターネット経由でGoogleニュース検索を行い,検索結果を一覧表示・ファイル保存する.記事タイトルをクリックすると,ブラウザを使って当該ニュースを表示する." ?>
18: <?define SourceFolder = "C:\SampleProgrram\cpp\googlenewswin\" ?>
<?define 変数名 ="変数の内容" ?>
GUID_Product | プロダクトのGUID |
GUID_MenuAppComponent | アプリケーションメニューのGUID |
GUID_ApplicationComponent | アプリケーションコンポーネントのGUID |
GUID_EtcComponent | etcコンポーネントのGUID |
GUID_Upgrade | アップグレードGUID |
GUID_MenuPahooComponent | pahooメニューコンポーネントのGUID |
ProductName | プロダクト名称(英数字) |
ProductNameJP | プロダクト名称(日本語) |
ProductVersion | プロダクト・バージョン(小数) |
MinumumVersion | アップデート可能なの最小(最古)バージョン |
ProductComment | プロダクトに関する説明。 |

インストールやアップデートは GUID_Upgrade を参照するので、同一プロダクトにつき、この GUID は同一にすること。
これから作るプログラムは、デフォルトでスタートメニューに pahoo.org フォルダを作成し、その配下にショートカットを配置していく。そこで、GUID_MenuPahooComponent の GUID も同一にすること。
これ以外のGUIDについては、アップデートの度にあらたに生成すること。

XML中で変数を参照するときは $(var.GUID_Product) のように記述する。
そこで、カスタマイズがやりやすいフリーソフト WiX(Windows Installer XML)を利用することにした。