如果没有LIB,怎样调用指定的DLL?例如:想调用WINDOWS提供的TAPI.DLL,在VC中怎样来调用这个DLL呢?

解决方案 »

  1.   

    那就只有靠LoadLibrary + GetProcAddress来动态加载了……
      

  2.   

    如果是系统的DLL,一般VC都会带.H和.LIB文件的。如果只有DLL文件,只要知道导出函数名、参数个数、参数类型、返回值类型,即函数原型,也可以调用。
    比如,我知道 math.dll 中导出了 GetMax 函数,并得知该函数原型如下:
    int GetMax(int x,int y);那么我就可以用下面的方法调用:
    typedef int (* GETMAX)(int,int)HMODULE hMod = LoadLibrary("math.dll");
    GETMAX  GetMax = (GETMAX)GetProcAddress(hMod,"GetMax");
    if(GetMax)int x = GetMax(100,10);
    FreeLibrary(hMod);