主程序动态调用一个DLL中的一个函数,但DLL中的这个函数要调用主程序中的一个函数来完成一些功能,请问Dll中的函数如何能调用主程序中的一个函数呢?最好给出主程序和DLL代码示例,非常感谢!!

解决方案 »

  1.   

    在DLL的接口函数中加入一个要调用数的指针
    Function DllLoadMainFun(parameters......;@ProcName);type;stdcall;
    ProcName就是你要调用的主程序里的涵数名,当然还要在Dll里声明一个函数
      

  2.   

    to wolf2005
    能否详细一些,在线等待,解决了马上结帖
      

  3.   

    知道怎么动态调用Dll吧,把要调用的函数指针传到Dll中就行。
      

  4.   

    to tlihui
    那如何传过去,主程序需要做什么?DLL中又需要声明或怎样接受传过来的函数指针呢?总之,我一头雾水,请各位详细一些,最好有些代码示例。
      

  5.   

    需要把主程序的被调用的 函数地址传给dll 不然dll怎么调用呢?
      

  6.   

    困惑,有这个必要吗???既然这样,为什么不把主程序中要被dll调用的函数,也封在另一个dll中,让主程序和第一个dll共同调用呢
      

  7.   

    看看回调函数就明白了;
    在DELPHI中很多地方都有
      

  8.   

    假如你的DLL中的函数是A ,需要调程序中的函数B,则A 应该定义为回调  A=function(Param1...,Address)  最后一个参数是函数B的入口地址程序中调用A是就是  A(,,,,,@B)就OK了