积极答复者
MFC加载DLL为什么失败

问题
-
dll类型是“使用共享MFC DLL的规则dll.
然后在add_dll.cpp最下面加了这几句:
int add(int a,int b){
return a+b;
}
然后在add_dll.def里面加了,add导出。
最后,点生成add_dll.dll,把生成的add_dll.dll和add_dll.lib拷到了。
基于对话框的mfc目录release目录里,
使用是这两句:
#pragma comment(lib,"add_dll.lib")
_declspec(dllimport) int add(int a,int b);
错误:1>LINK : fatal error LNK1104: 无法打开文件“add_dll.lib”
什么原因?自己找了一天,没找到
- 已编辑 angel725 2013年1月22日 11:02
答案
-
弄明白了,目录搞错了。。。可以用了。只是不明白,为什么两个工程目录。 我的exe的那个工程名叫”test_dll" 会创建同名的test_dll. 可是在test_dll目录里,还有一个test_dll目录。这两个目录有什么不同吗?
创建工程的时候,“新建工程”对话框右下角有个复选框:“Create directory for solution”(为解决方案新建目录)。假设你的工程名是AAA,如果你勾选了这一项,Visual Studio会建立一个AAA文件夹放置sln、sdf等文件,里面还有一个同名文件夹放置其他工程相关文件。如果你没有勾选这一项,则所有文件都放在一个AAA文件夹中。Damon Zheng
MSDN Community Support | Feedback to us
Develop and promote your apps in Windows Store
Please remember to mark the replies as answers if they help and unmark them if they provide no help.- 已标记为答案 angel725 2013年1月23日 10:49
全部回复
-
弄明白了,目录搞错了。。。可以用了。只是不明白,为什么两个工程目录。 我的exe的那个工程名叫”test_dll" 会创建同名的test_dll. 可是在test_dll目录里,还有一个test_dll目录。这两个目录有什么不同吗?
创建工程的时候,“新建工程”对话框右下角有个复选框:“Create directory for solution”(为解决方案新建目录)。假设你的工程名是AAA,如果你勾选了这一项,Visual Studio会建立一个AAA文件夹放置sln、sdf等文件,里面还有一个同名文件夹放置其他工程相关文件。如果你没有勾选这一项,则所有文件都放在一个AAA文件夹中。Damon Zheng
MSDN Community Support | Feedback to us
Develop and promote your apps in Windows Store
Please remember to mark the replies as answers if they help and unmark them if they provide no help.- 已标记为答案 angel725 2013年1月23日 10:49