vs2010の開発環境で、mfcアプリケーションを作成しています。
mfc拡張DLLを追加すると、LNK2019が発生し、リンクが失敗します。
( LNK2019 : 未解決の外部シンボル / unresolved external symbol )
同様の作業をvs2005、vs2008で行っても、このエラーは発生しません。
また、vs2005、vs2008のソリューションファイルをvs2010に変換しても、このエラーは発生しません。
プロパティを比較しましたが、解決に至っておりません。
解決方法をご存知の方、ご教示ください。
よろしくお願いいたします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
通常のLNK2019であれば他にログが出ていると思いますので、それも記載してください。
この回答への補足
ありがとうございます。
情報不足で申し訳ありません。
構成
MFCExtDLL(.exe)
ExtDLL(.dll)
の構成で、ExtDLLに、cTestクラスを追加し、
MFCExtDLLのMFCExtDLL.cppに、cTestのインスタンス宣言だけしています。
このため、コンストラクタとデストラクタのLNK2019が出ています。
以下、リンク時のエラーログです。
このエラーログで気が付いたのですが、コンパイルオプションで、何故か
/D _AFXDLL
が出力されています。このせいでしょうか?
ちなみに、C/C++プロプロセッサの定義
WIN32;_WINDOWS;_DEBUG;%(PreprocessorDefinitions)
で、%(PreprocessorDefinitions)の定義の確認方法が分かりません。
----
2013/07/24 18:49:29 にビルドを開始しました。
1>ノード 3 上のプロジェクト "C:\Users\xxx\Documents\Visual Studio 2010\Projects\MFCExtDLL\MFCExtDLL\MFCExtDLL.vcxproj" (rebuild ターゲット)。
1>InitializeBuildStatus:
"Debug\MFCExtDLL.unsuccessfulbuild" のタッチ タスクを実行しています。
ClCompile:
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\CL.exe /c /I..\ExtDLL /ZI /nologo /W3 /WX- /Od /Oy- /D WIN32 /D _WINDOWS /D _DEBUG /D _UNICODE /D UNICODE /D _AFXDLL /Gm /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Yc"StdAfx.h" /Fp"Debug\MFCExtDLL.pch" /Fo"Debug\\" /Fd"Debug\vc100.pdb" /Gd /TP /analyze- /errorReport:prompt stdafx.cpp
stdafx.cpp
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\CL.exe /c /I..\ExtDLL /ZI /nologo /W3 /WX- /Od /Oy- /D WIN32 /D _WINDOWS /D _DEBUG /D _UNICODE /D UNICODE /D _AFXDLL /Gm /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Yu"StdAfx.h" /Fp"Debug\MFCExtDLL.pch" /Fo"Debug\\" /Fd"Debug\vc100.pdb" /Gd /TP /analyze- /errorReport:prompt MFCExtDLL.cpp MFCExtDLLDlg.cpp
MFCExtDLLDlg.cpp
MFCExtDLL.cpp
コードを生成中...
ResourceCompile:
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\rc.exe /D _DEBUG /D _UNICODE /D UNICODE /D _AFXDLL /l"0x0411" /IDebug\ /nologo /fo"Debug\MFCExtDLL.res" MFCExtDLL.rc
ManifestResourceCompile:
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\rc.exe /nologo /fo"Debug\MFCExtDLL.exe.embed.manifest.res" Debug\MFCExtDLL_manifest.rc
Link:
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\link.exe /ERRORREPORT:PROMPT /OUT:"C:\Users\xxx\Documents\Visual Studio 2010\Projects\MFCExtDLL\Debug\MFCExtDLL.exe" /INCREMENTAL /NOLOGO /MANIFEST /ManifestFile:"Debug\MFCExtDLL.exe.intermediate.manifest" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"C:\Users\xxx\Documents\Visual Studio 2010\Projects\MFCExtDLL\Debug\MFCExtDLL.pdb" /SUBSYSTEM:WINDOWS /TLBID:1 /ENTRY:"wWinMainCRTStartup" /DYNAMICBASE /NXCOMPAT /IMPLIB:"C:\Users\xxx\Documents\Visual Studio 2010\Projects\MFCExtDLL\Debug\MFCExtDLL.lib" /MACHINE:X86 Debug\MFCExtDLL.res
Debug\MFCExtDLL.exe.embed.manifest.res
Debug\MFCExtDLL.obj
Debug\MFCExtDLLDlg.obj
Debug\stdafx.obj
1>MFCExtDLL.obj : error LNK2019: 未解決の外部シンボル "__declspec(dllimport) public: __thiscall cTest::cTest(void)" (__imp_??0cTest@@QAE@XZ) が関数 "void __cdecl `dynamic initializer for 'test''(void)" (??__Etest@@YAXXZ) で参照されました。
1>MFCExtDLL.obj : error LNK2019: 未解決の外部シンボル "__declspec(dllimport) public: __thiscall cTest::~cTest(void)" (__imp_??1cTest@@QAE@XZ) が関数 "void __cdecl `dynamic atexit destructor for 'test''(void)" (??__Ftest@@YAXXZ) で参照されました。
1>C:\Users\xxx\Documents\Visual Studio 2010\Projects\MFCExtDLL\Debug\MFCExtDLL.exe : fatal error LNK1120: 外部参照 2 が未解決です。
1>プロジェクト "C:\Users\xxx\Documents\Visual Studio 2010\Projects\MFCExtDLL\MFCExtDLL\MFCExtDLL.vcxproj" (rebuild ターゲット) のビルドが終了しました -- 失敗。
ビルドに失敗しました。
経過時間 00:00:03.83
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(ギャンブル) 4年に1度のワールドカップ!!せっかく見るから宝くじ買って見ようと思います!予想を手伝って!! 2 2022/11/09 15:27
- サッカー・フットサル 日本のワールドカップ、PK戦になると思いますか? 1 2022/11/19 13:42
- Visual Basic(VBA) VSコードでバックスペースキーが効かない(パイソン) 1 2022/11/09 04:00
- その他(映画) 映画に詳しい方 ○○○VS兵馬俑 1 2022/09/30 15:25
- その他(プログラミング・Web制作) visual studio code 共有方法 1 2022/04/06 17:55
- その他(プログラミング・Web制作) Python でWindowsのショートカット(.lnk)のプロパティを参照したい 1 2023/02/01 15:09
- 関東 山手線駅名戦いゲームで、東京駅より左と右では、どちらが勝率あると思いますか? 2 2023/01/13 20:31
- HTML・CSS VSコードでHTMLに(リンク)ファイル名をクリックしてもファイルが開かれない 1 2023/02/12 07:52
- その他(芸能人・有名人) VS 1 2023/03/03 23:19
- サッカー・フットサル セネガルvsオランダ アメリカvsウェールズ アルゼンチンvsサウジアラビア デンマークvsチュニジ 1 2022/11/20 23:33
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
外部依存関係について
-
c言語とfortranの混在プログラ...
-
PCをシャットダウンさせるプロ...
-
vs2010 mfc拡張DLL LNK2019
-
LNK2019: 外部シンボル どのよ...
-
LNK2001(Pro*c)
-
外部シンボルの未解決のエラー
-
ilink32について。'__setargv__...
-
FORTRANのエラーメッセージで・...
-
wsprintfのエラーについて
-
DXライブラリ3D導入方法
-
python エラー
-
エクセルのエラーメッセージ「4...
-
<unistd.h>をVisualStudioでつ...
-
Excelのエラーで困ってます。
-
アプリケーションのDLLファイル...
-
VBAを何回も作り直して、容量が...
-
sys/time.hのインクルードがで...
-
適切な変換関数が存在しない???
-
unsigned long long 型のフォー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
外部依存関係について
-
LNK2019: 外部シンボル どのよ...
-
外部シンボルの未解決のエラー
-
LNK2001(Pro*c)
-
外部シンボル" ~~"は未解決で...
-
ステータスバーを作ろうとして...
-
popen・pcloseについて
-
コンパイルエラー
-
error LNK2001について
-
ilink32について。'__setargv__...
-
「外部シンボルが未解決」につ...
-
IP Helper APIを使うとエラーが...
-
パブリックシンボルとは?
-
リンカのエラー
-
VC++2008でのサンプルプログ...
-
C++でのエラー LNK2001
-
VC++始めたんですが、エラーの...
-
ビデオキャプチャ(VC++超初心...
-
C言語でレジストリ取得「未解決...
-
C言語のエラー LNK1120: 外部参照
おすすめ情報