none
MFC加载DLL为什么失败 RRS feed

  • 问题

  • 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
    2013年1月22日 11:02

答案

  • 路径不对吧,您将您编译生成的add_dll.lib拷贝到工程目录下。

    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.

    • 已标记为答案 angel725 2013年1月23日 10:49
    2013年1月22日 12:50
    版主
  • 弄明白了,目录搞错了。。。可以用了。只是不明白,为什么两个工程目录。 我的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
    2013年1月23日 10:30
    版主

全部回复

  • 路径不对吧,您将您编译生成的add_dll.lib拷贝到工程目录下。

    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.

    • 已标记为答案 angel725 2013年1月23日 10:49
    2013年1月22日 12:50
    版主
  • release和工程 目录都试了。不行。

    mfc工程向导创建时有个,选使用“静态dll”和“动态dll"(好像叫这个)也都试了不行。

    都是这个错误

    2013年1月22日 13:10
  • 弄明白了,目录搞错了。。。可以用了。只是不明白,为什么两个工程目录。 我的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
    2013年1月23日 10:30
    版主