我编了一个DLL,所在路径为: d:\test\debug\test.dll 现在我想在测试程序中掉用:
我在stdafx.h文件中输入了:#import "D:\testlwg\Debug\testlwg.dll" no_namespace
请问我不管这个DLL文件的位置,只要这个DLL注册了就行, 我该怎样引入这个DLL?

解决方案 »

  1.   

    不管位置就把它放在系统目录下!我没用过“:#import "D:\testlwg\Debug\testlwg.dll" no_namespace”。1、包含该DLL的头文件;
    2、在工程设置中做好LIB文件的导入。
      

  2.   

    在你调用的程序中loadlibary不可以么?单位采用的方法是使用智能指针取加载,这样不用freelibary也不会发生资源泄漏不知道我说的对不
    菜鸟一个我
      

  3.   

    将dll放到系统目录比如system32下,然后注册dll
    再包含该DLL的头文件,并在工程设置中做好LIB文件的导入
      

  4.   

    com需要注册
    一般的dll不需要
    直接
    loadlibary(路径)进行调用
    GetProcAddress(句柄,函数名) 获取函数指针就可以了
      

  5.   

    http://blog.csdn.net/zgwangbo/archive/2006/01/13/577927.aspx
      

  6.   

    #import "D:\testlwg\Debug\testlwg.dll" no_namespace这条指令会生成一个.h和.c文件,生成后,你去掉这条指令,然后,直接包含这两个文件,这样,以后就不用这个dll啦.以上是我的推测,没有试验过.
      

  7.   

    还有一种办法是直接按ctrl+w,import library来引入(vc6, vc7不知道,估计也有类似的菜单)
    要想在第一次使用的时候都完全不用知道,似乎不太可能.要想引用另外一个模块的东西,首先要知道的就是接口声明,一种是别人告诉你,一种是你去取,前者是引出者提供一个文件,如lib, tlb, 头文件等,后者是自己loadlibrary, import等.
      

  8.   

    引入dll有两种方法。隐式和显式。