ひきこもりプログラマ

C++のこととか。

広告

※このエリアは、60日間投稿が無い場合に表示されます。記事を投稿すると、表示されなくなります。

Visual C++ 6.0プロジェクトを2005にアップグレードしたらC1189

2009-02-12 | Program

stdafx.cppをコンパイル中に,afx.hの

<code>#ifdef _DLL
#ifndef _AFXDLL
#error Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]
#endif
#endif</code>

にひっかかります。「構成プロパティ→全般→MFC の使用」は「共有 DLL で MFC を使う」になっているのにもかかわらず! というかそもそもこの#error行がエディタ内ではグレーで表示されているので,_AFXDLLは間違いなく定義されています。「構成プロパティ→C/C++→コマンド ライン」でも確認済み。

必死にぐぐって,VC++プロジェクトをアップグレードするとCPPファイル単位でコンパイルオプション情報が付いてしまうことがわかりました。しかもDebug|Win32構成だけ。なんだその謎挙動。

コメント
この記事をはてなブックマークに追加