主题:如何在MFC的EXE工程中引用MFC建立的DLL???
最近在研究DLL,没想到刚上手就出现了问题了。我首先在MFC下建立了一个名为DLL1的DLL工程,
class CDll1App : public CWinApp//此类由工程自动生成
{
public:
_declspec(dllexport) int subtract(int a,int b);
_declspec(dllexport) int add(int a,int b);
}
以上是我写的两个简单函数。然后又建立了一个MFC的EXE工程,并将DLL1.LIB和DLL1.DLL复制到此工程目录下,且在工程——设置——连接页设置了对象/库模块为DLL1.LIB。最后在响应函数的头文件中声明:
_declspec(dllimport) int add(int a,int b);
_declspec(dllimport) int subtract(int a,int b);
响应函数如下:
void CTestDll1Dlg::OnAdd()
{
// TODO: Add your control notification handler code here
CString str;
str.Format("5+3=%d",add(5,3));
MessageBox(str);
}
却出现以下报错:
--------------------Configuration: TestDll1 - Win32 Debug--------------------
Compiling...
TestDll1Dlg.cpp
Linking...
TestDll1Dlg.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) int __cdecl add(int,int)" (__imp_?add@@YAHHH@Z)
Debug/TestDll1.exe : fatal error LNK1120: 1 unresolved externals
执行 link.exe 时出错.
TestDll1.exe - 1 error(s), 0 warning(s)
请高手指点!!不胜感激!!
class CDll1App : public CWinApp//此类由工程自动生成
{
public:
_declspec(dllexport) int subtract(int a,int b);
_declspec(dllexport) int add(int a,int b);
}
以上是我写的两个简单函数。然后又建立了一个MFC的EXE工程,并将DLL1.LIB和DLL1.DLL复制到此工程目录下,且在工程——设置——连接页设置了对象/库模块为DLL1.LIB。最后在响应函数的头文件中声明:
_declspec(dllimport) int add(int a,int b);
_declspec(dllimport) int subtract(int a,int b);
响应函数如下:
void CTestDll1Dlg::OnAdd()
{
// TODO: Add your control notification handler code here
CString str;
str.Format("5+3=%d",add(5,3));
MessageBox(str);
}
却出现以下报错:
--------------------Configuration: TestDll1 - Win32 Debug--------------------
Compiling...
TestDll1Dlg.cpp
Linking...
TestDll1Dlg.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) int __cdecl add(int,int)" (__imp_?add@@YAHHH@Z)
Debug/TestDll1.exe : fatal error LNK1120: 1 unresolved externals
执行 link.exe 时出错.
TestDll1.exe - 1 error(s), 0 warning(s)
请高手指点!!不胜感激!!