如题,请给出具体操作和相关代码!例如:我现在有一个名为a.dll的文件,该dll中有一个函数名为function1(),然后我新建了一个名为b的win32dll,该dll将a.dll封装于其中,我想在一个基于对话框的MFC程序中通过加载b.dll来调用a.dll中的function1函数!如何实现?谢谢你!

解决方案 »

  1.   

    和EXE一样,在你的DLL中使用LoadLibrary和FreeLibrary来使用旧的DLL即可啊,呵呵
      

  2.   

    for example:
    typedef void (*PROC_Function) (....);
    void TestFunc1()
    {
    HANDLE hMod = LoadLibrary("TheDll.dll");
    if(hMod)
    {
    PROC_Function pFunc1=  (PROC_Function) GetProcAddress(hMod, "function1");
    if(NULL!=pFunc1)
    pFunc1(...);
    FreeLibrary(hMod);
    }
    }
      

  3.   

    关键问题是我现在不能把a.dll带入应用程序中,我想把它以资源或其它形式完全封装在b.dll中,如何做到?
      

  4.   

    关键问题是我现在不能把a.dll带入应用程序中,我想把它以资源或其它形式完全封装在b.dll中,如何做到?
      

  5.   

    我不知道是我没说清楚还是各位老大没有理解到我的意思,这样说吧,怎样把a.dll封装到b.dll中?请给出操作方法或程序代码!
      

  6.   

    如果我旧的动态链接库只有dll文件,如何把该dll编译到新的win32dll中去?
      

  7.   

    为每个a.dll中的函数在b.dll中写一个导出函数即可
    a.dll中的函数:void a_function();b.dll:
    void b_a_function()
    {
    HANDLE hMod = LoadLibrary("a.dll");
    if(hMod)
    {
    PROC_Function pf=  (PROC_Function) GetProcAddress(hMod, "a_functon");FreeLibrary(hMod);pf();}}