プロジェクト 'MFCDLLTest - Win32 Debug' 用の中間ファイルおよび出力ファイルを削除しています。
--------------------構成: MFCDLLTest - Win32 Debug--------------------
リソースをコンパイル中...
コンパイル中...
StdAfx.cpp
コンパイル中...
MFCDLLTest.cpp
d:\documents and settings\administrator\デスクトップ\watercontrol\mfcdlltest\mfcdlltestdlg.h(16) : warning C4091: 空白の宣言が見つかりました。
MFCDLLTestDlg.cpp
d:\documents and settings\administrator\デスクトップ\watercontrol\mfcdlltest\mfcdlltestdlg.h(16) : warning C4091: 空白の宣言が見つかりました。
コードを生成中...
リンク中...
MFCDLLTestDlg.obj : error LNK2001: 外部シンボル ""int __cdecl MyFunction(int,int)" (?MyFunction@@YAHHH@Z)" は未解決です
Debug/MFCDLLTest.exe : fatal error LNK1120: 外部参照 1 が未解決です。
link.exe の実行エラー对话框.h文件加的代码
/*************MY ADDED CODE*********************/
#define DllImport  _declspec(dllimport);
extern "C" int DllImport MyFunction(int a, int b);
/***********************/对话框.cpp调用代码
void CMFCDLLTestDlg::OnShow() 
{
// TODO: この位置にコントロール通知ハンドラ用のコードを追加してください
CString str;
int x1 = 15,x2 = 20;
int sum;
sum = MyFunction(15,20);
str.Format("The sum of %d and %d is %d",x1,x2,sum);
MessageBox("abc");
}DLL文件代码:
DLL.h
#define DllExport _declspec(dllexport);
extern "C" DllExport int MyFunction(int a,int b);DLL.cpp
extern "C" DllExport int MyFunction(int a,int b)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
int sum;
sum = a+b;
return sum;
}另外已经将.dll与.lib文件加入test对话框文件夹中,lib文件也在DEBUG/SETTING中做了声明