Visual C++ 2005で作成したMBCSアプリでビジュアルスタイルを有効にする方法
VC++2005で、MBCSアプリを作成すると、ビジュアルスタイルが有効にならずに、昔ながらのWindows95っぽいクラシックスタイルに。
これを回避する為にはstdafx.hに以下の内容を追加。
#if defined _M_IX86 #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"") #elif defined _M_IA64 #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"") #elif defined _M_X64 #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"") #else #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"") #endifこれ、UNICODEアプリだと、何故かこの部分が#ifdef _UNICODEでくくられているんだよね・・・。
追記:
お客さんのご指名だから、Visual C++を使う羽目に。(号泣
うん、やっぱり、MFCは使いづらい。ヽ(`Д´)ノ ウワァァァン
それに、一度でもデバッグすると、EXEがロックされるか何かで再ビルドできない。オプションの”平行にビルドするプロジェクト数”を1にしてもだめ。IDEを起動し直したらOK。だけど、デバッグするたびにIDEを起動し直すのは萎え萎え。
VS2008の日本語版が出てきたら、FIXされているかどうか試してみるか。
最悪、冬休み中に開発用マシンを自宅に持ち帰って、再インストールするしかないかも。