ATL/WTLメモ

Debug版ではビルドできるのにRelease版でビルドすると、
(Visual C++ .net 2003 standard版)

AppName error LNK2005: __osplatform は既に atlmincrt.lib(atlinit.obj) で定義されています。
AppName error LNK2019: 未解決の外部シンボル _main が関数 _mainCRTStartup で参照されました。
AppName error LNK1120: 外部参照 1 が未解決です。


このようなエラーが出ることがあります。(AppNameはプロジェクトの名前ね☆)
で、これはRelease版のプロジェクトの設定で「ATL で CRT をできるだけ使用しない」が「はい」になってるからで、これを「いいえ」にすれば正常にビルドできます。


というかこれ、「ATL で CRT をできるだけ使用しない」の説明に「[ATLの使用]が設定されているときに使用できます。」とあるくせに上の「ATLの使用」が「ATLを使用しない」になってて、つまりデフォでこのビルドエラーが出ることになるのか。ひどいよ。