Win32 フリー開発環境
(Visual C++ 2008 Express Edition 編)
(2007/12/25〜)
(以前のバージョン (Visual C++ 2005 Express Edition + Platform SDK 編) を確認したい方は、こちらからどうぞ。)
まずは Visual Studio 2008 Express Edition 日本語版 から、Visual C++ 2008 Express Edition を好みの方法でインストールします。私は ISO イメージからインストール DVD を作成してインストールしました。
DVD をセットすると、自動的にインストーラが起動します。起動しない設定にしている人は、DVD
ドライブ内の setup.hta を実行してください。Visual
Studio 2008 Express Edition のインストーラが起動しますので、Visual
C++ 2008 Express Edition を選択します。

あとはインストーラの指示に従っていくだけですので、特に難しい部分は無いと思います。
ResEdit のインストール
残念ながら、Visual Studio 2008 Express Edition には、リソース エディタが付属しません。正確には、“Win32 リソースをビジュアルに編集するツール”が付属していません(managed 環境のリソース エディタは付いています)。Win32 入門のバイブル、ペゾルド本に書かれているように、昔ながらにテキスト エディタでリソース スクリプトを編集しても良いのですが、ダイアログの編集などは、なかなか骨が折れる作業となります。そこで、外部のリソース エディタを登録して使用することにします。ここでは、ResEdit Home Page (http://www.resedit.net/) で配布されている ResEdit を使用することにしました。以前の VC2005EE の時も書きましたが、理由は単にカッコイイから (^^;) です。日本語が化けたり、ローカライズができない部分があったりしますが、取り敢えず現バージョン (1.3.7.2) 用の日本語ファイルを作成しましたので、それなりに使えるのではないでしょうか。
ResEdit.zip をダウンロードして解凍すると、次のように展開されます。

同じフォルダに日本語ファイルも展開しておき、フォルダごと C:\Program Files に移動します。移動後、ResEdit.exe と ResEdit.chm のセキュリティ ブロックを解除しておきます。
実行すると、次のように聞いてきますので、[はい]
を選択します。

include ディレクトリの設定画面になりますので、Platform
SDK のinclude ディレクトリを指定します。[Add] ボタンを押すのを忘れずに!

[OK] を押すと ResEdit が開始します。が、設定が英語になっていますので、日本語に設定しましょう。[Options]
メニューから、[Preferences] を選択すると、Include
path を設定した同じ画面が出てきます。左側のツリーの
[General] を選択すると、言語とマクロの設定画面になりますので、日本語 (Japanese) を設定しましょう。

[OK] を押すと、下記のメッセージが出てきます。言語設定は再起動してから反映されるということですので、[OK]
ボタンを押したら、一旦 ResEdit を終了しましょう。

再度 ResEdit を起動すると、今度は日本語化されているはずです。まだ不完全ですが、簡単なテキスト
ファイルですので、修正も容易です。どなたか未訳部分を補完してもらえると助かります (^^;) 。

サンプル プログラムのビルド、実行
早速プログラムを作成してみます。Visual C++
を起動し、[ファイル(F)] メニュー → [新規作成(N)]
→ [プロジェクト(P)...] と選択すると、[新しいプロジェクト]
ダイアログが表示されます。[プロジェクトの種類(P):]
に [Win32] を選択し、[テンプレート(T):] に [Win32
プロジェクト] を選択して、[プロジェクト名] を入力します。ここでは
Test とし、ソリューションのディレクトリは作成しないことにしました。

[OK] を押すと [Win32 アプリケーション
ウィザード] に切り替わります。すぐに [完了]
ボタンを押しても構いませんが、念のため左側の
[アプリケーションの設定] を選択するか、[次へ
>] ボタンを押します。

[アプリケーションの種類:] が [Windows アプリケーション(W)] になっているのを確認し、[完了] ボタンを押します。
ビルド、実行するとメニューを持つだけのプログラムが出来上がります。

このプログラムにはリソースとしてメニュー、アイコン、ダイアログなどがありますが、先に書いた通り、Visual C++ 2008 Express Edition でグラフィカルに編集することはできません。クリックすると、リソース ビューに切り替わりますが、“リソースの編集は Visual C++ Express SKU でサポートされていません。”とエラー表示されます。そこで、リソースを編集する際には自動的に ResEdit が起動するように、*.rc に ResEdit を関連付けしておきます。
具体的には、Visual C++ 2008 Express Edition 左側のソリューション エクスプローラ内で、リソース スクリプト (例では Test.rc) を右クリックし、[ファイルを開くアプリケーションの選択(N)...] からファイルを開くアプリケーションの選択ダイアログを表示します。
ここで [追加(A)...] ボタンを押して、ResEdit
を追加します。

更に [既定値として設定(D)] で、自動的に
ResEdit が起動するようにできます。

これで、ソリューション エクスプローラで *.rc をダブルクリックすると、ResEdit が起動して、メニューやダイアログを GUI で編集することができるようになりました。
折角 ResEdit を使えるようにしたので、実際にリソースを編集してみましょう。ResEdit では容易にマニフェスト ファイルを追加できるので、ここではデフォルトで生成される [バージョン情報] ダイアログを XP スタイルにしてみます。
まずは Visual C++ のソリューション
エクスプローラで Test.rc をダブルクリックして
ResEdit を起動し、[バージョン情報] ダイアログを編集します。

次に ResEdit のリソース ビューで右クリックし、[リソースの追加...]
→ [Manifest] と選択します。すると、

と聞いてきますので、[はい(Y)] を選択します。更に、

と表示されるので、そのまま [保存(S)] を押します。またまた、

と表示されます。[相対パス] が選択されていることを確認した上で、[OK]
ボタンを押します。
これでマニフェスト ファイルが追加されました。

ResEdit を閉じて Visual C++ に戻り、ソリューション
エクスプローラでプロジェクト名 (例では Test)
を右クリックして、[プロパティ(R)] を選択します。[構成プロパティ]
より [マニフェスト ツール] → [入力と出力] を選択して、右側の
[追加のマニフェスト ファイル] 欄に、先ほどのマニフェスト
ファイル名 (先ほどの manifest.xml) を入力します。

[OK] ボタンを押してビルドすると、[バージョン情報]
ダイアログに XP スタイルが適用されているのが確認できます。

※ 余談ですが、“追加のマニフェスト ファイル”に追記して初めて適用される場合と、ここに記述しなくてもリソースに含めるだけでスタイルが変化する場合とがあるようなのですが、今のところ違いがサッパリわかりません。因みに手元にある後者のタイプは、Visual C++ 6.0 のマニフェスト付きプロジェクトを 2005/2008 に移行したものなのですが、この欄は空欄です。何か他に関係するオプション等があるのでしょうか・・・。
今後気が向けば、更に DirectX を加えた環境などにも触れていきます (インストールしてディレクトリの指定を行うだけですので、セットアップ自体は簡単です) 。
(2008/02/03)