第一种办法:在你的工程中包含该DLL的头文件和lib文件。然后直接调用dll中的函数即可。
  第二种办法:程序运行期间用LoadLibrary()加载该DLL,并用GetProcAddress()来获取据所要调用的函数的地址。

解决方案 »

  1.   

    我已经有一个编好的add.dll,可以用vb调用。我要在另一个vc编的应用程序中调用.要在.cpp和.h中分别写什末语句?如何声明?谢谢!!!!
      

  2.   

    谢谢,webber84
    "在你的工程中包含该DLL的头文件和lib文件"是在.cpp中include就行了吗?
    “用LoadLibrary()加载该DLL“的具体用法是:loadlibrary(add.dll)吗?
    GetProcAddress()的用法我不会。
      

  3.   

    不是
    HMODULE hMoudle = LoadLibrary("add.dll");
    FreeLibrary(hModule);
      

  4.   

    不是
    #define int (*FUNCTYPE)(void);//看具体情况而定
    HMODULE hMoudle = LoadLibrary("add.dll");FUNCTYPE func;
    func = (FUNCTYPE)GetProcAddress(hModule,"<funcname>");FreeLibrary(hModule);
      

  5.   

    如果我选
      第二种办法:程序运行期间用LoadLibrary()加载该DLL,并用GetProcAddress()来获取据所要调用的函数的地址。
    还用在.h&.cpp文件中声明什末吗?
      

  6.   

    如果我选
      第二种办法:程序运行期间用LoadLibrary()加载该DLL,并用GetProcAddress()来获取据所要调用的函数的地址。
    还用在.h&.cpp文件中声明什末吗? .
     
      

  7.   

    在.CPP 开始地方加入:
    #pragma comment(lib,"testdll.lib") 
    #include "testdll.h" //编写testdll.dll时的头文件.
    在.cpp中就可以随意使用DLL中的类与函数了.
      

  8.   

    如果你用第二种办法,不用在.h&.cpp文件中声明任何东西。但要保证你的DLL文件在加载程序能找得到的地方。
      

  9.   

    1.使用隐含链接:
      A.一个包括导出的函数或C++类的头文件
      B.一个输入库文件(.lib文件)
    2.显式链接
    如果没有与DLL相关联的LIB文件,则必须使用显式链接:
    // declare the function will you use
    HINSTANCE hDLL;
    hDLL = LoadLibrary("MyDLL.DLL");
    if (hDLL !=NULL)
    {
        GetProcAddress(hDLL,"Your name of function");
     }