我用VC写了一个DLL是用来勾住键盘的!
请问在我的主程序中如何调用它??
谢谢!

解决方案 »

  1.   

    正好我这几天也在学习dll调用的问题,其实dll文件中的函数调用都是一样的,你只要学会如何调用它们就行了。
    在一程序中加入以下的代码就可以动态调用一个函数了。FARPROC ptf;//定义一个函数指针
    HMOUDLE hDll = LoadLibrary (TEXT("dll文件的名字"));//调入一个dll
    ptf = GetProcAddress(hDll,TEXT("要调用的函数的名字"));//找到要调用的函数的地址
    (*ptf)();//调用这个函数
      

  2.   

    你的dll中应该有一个StartHook之类的函数
    然后用楼上说的方法调用
      

  3.   

    谢拉!我的E:[email protected]
      

  4.   

    使用SetWindowsHookEx 函数把你应用程序定义的 钩子过程(定义在你的DLL中) 安装到钩子链中。
    安装钩子过程时,Windows使钩子过程 监视的事件和指定的线程或系统中的所有线程关联。
    ============================================
    简介SetWindowsHookEx函数原型:
    1、int idHook 
       指定将安装的钩子过程的类型,例如使用WH_KEYBOARD类型来监视键盘消息
    2、HOOKPROC lpfn
       指向动态库中的钩子过程,也就是从DLL中取得的函数指针
    3、HINSTANCE hMod
       标识DLL,此DLL含有lpfn参数指定的钩子过程
    4、DWORD dwThreadId
       标识与钩子过程相关的线程,如果该参数为零,则钩子和所有的线程相关联调用CallNextHookEx函数来链接下一个钩子过程,以确保程序正确运行程序调用结束前必须调用UnhookWindowsHookEx释放系统资源