我在vb下做了一个dll文件(myDll),想在VC++下调用他,还有怎样使用dll内定义的函数(带参数的)
帮忙

解决方案 »

  1.   

    按楼主所说,可以用显示调用vb作的dll
    LoadLibrary()
    GetProcAddress()
    和调用别的dll没什么区别,关键做好vc能识别vb中的参数
      

  2.   

    typedef returnvaluetype (WINAPI *PFUNCTYPE)(paratypelist...);
    HMODULE h = LoadLibrary("svrapi.dll");
    if (h == NULL)
    {
    return 0;
    }
    PFUNCTYPE FuncName = NULL;
    FuncName = (PFUNCTYPE)GetProcAddress(h, "FuncName");
    if (FuncName == NULL)
    {
    FreeLibrary(h);
    return 0;
    }
      

  3.   

    vb下做了一个dll文件?有用vc做的方便?
      

  4.   

    可能人家需要在vb和vc之间传递
      

  5.   

    vb下不用特殊的方法好像做出来的dll是com的dll吧?
    不是真正意义上的dll~
      

  6.   

    typedef returnvaluetype (WINAPI *PFUNCTYPE)(paratypelist...);
    HMODULE h = LoadLibrary("svrapi.dll");
    if (h == NULL)
    {
    return 0;
    }
    PFUNCTYPE FuncName = NULL;
    FuncName = (PFUNCTYPE)GetProcAddress(h, "FuncName");
    if (FuncName == NULL)
    {
    FreeLibrary(h);
    return 0;
    }
    **************************************************************
    "WINAPI *PFUNCTYPE" 这部分不太明白,一定要用“WINAPI”么?还是有别的可以用,有什么区别么?
    “FUNCTYPE”函数类型怎么看?我是先用VB作的接口,在VC++下添加的这个接口,引用的是VC++下的函数库。
    还有“HMODULE”,这个位置是不是还有其他的关键字可以用?
    我是初学的,本来应该系统的开始学,但是项目急,没时间了,还望有耐性的朋友多多帮助!