Windows Template Library

WTL 7.1
http://www.microsoft.com/downloads/details.aspx?familyid=1be1eb52-aa96-4685-99a5-4256737781c5&languageid=f49e8428-7071-4979-8a67-3cffcb0c2524&displaylang=en

MSDN Download Center http://msdn.microsoft.com/downloads/ で、Product を Visual C++ に、Keywords を WTL にして検索すると最新版が見つかる。今回は、たまたま 12/9 に WTL 7.1 がリリースされた後だったので、それを使った。
ダウンロードした WTL71.exe を実行すると、展開先 (インストール先) を聞かれる。デフォルトは C:\wtl71 だが、今回はドライブを変えて D:\wtl71 に入れた。中には、VC の各バージョン向けの ATL/WTL App Wizard と、ヘッダファイル、サンプルが入っている。
VC6 の場合、\AppWiz60\setup.js をエクスプローラから起動すれば、ウィザードがインストールされる。
で、VC6 を起動して、新規プロジェクトを作成する。ATL/WTL App Wizard を選べば、後は選んでいくだけで OK。オプションの意味がまだよくわからんけど。
ちょっとはまったのが、ヘッダファイルを置いたパスの追加の方法。プロジェクトの設定で [C/C++] タブの [プリプロセッサ] カテゴリに [インクルードファイルのパス] という項目があるが、ここに D:\wtl71\include\ を足してもダメみたいだ。正解は [ツール]→[オプション]→[ディレクトリ] と進み、[インクルードファイル] の [ディレクトリ] に追加する、というもの。なんかスッキリしないなぁ。
まぁ、とりあえずはビルドできるようになった。
ちなみに、気になる exe サイズを、MFC AppWizard で作った MFC アプリと比べてみた。ちょっといじったヤツなので MFC に不利な結果ではあるが、Debug ビルドで MFC だと 2MB だったのが、WTL では 270KB。Release ビルドでは MFC でも 300KB になったが、WTL では 40KB しかない。
Release ビルドで 300KB ってのが問題になる大きさだとは思わないが、複雑な UI を組むようになると重要な差になるのだろうか。あと、WTL 版を MFC 版に近いところまで作りこんだときの差がどうなるのかとか、実行中のリソース消費はどうなのかとかは、検証していない。

ATL/WTL (The So-Software Studio 内)
http://home.att.ne.jp/banana/akatsuki/doc/atlwtl/index.html