使用AttachThreadInput API函数
Public Declare Function AttachThreadInput Lib "user32" Alias "AttachThreadInput" (ByVal idAttach As Long, ByVal idAttachTo As Long, ByVal fAttach As Long) As Long
idAttach - 欲连接线程的标识符
idAttachTo - 其他线程的标识符,应设为当前具有输入的线程
fAttach - true连接,false撤销连接

解决方案 »

  1.   

    我最近做了一个远程控制客户端鼠标的程序,用的是VXD。
    你的这种情况用钩子就行了,很多网上有相关资料,有些还有VC编好了的DLL给你用的。
      

  2.   

    要获得其他程序的消息有两种方法。
    一是使用Hook函数,这样可以获得系统级的消息处理。
    二是接管该程序的消息处理,也就是重写一个消息处理函数代替原来的程序的消息处理函数。这样只能获得指定程序的消息处理。
      

  3.   

    你可以用GetCursorPos()and WindowFromPoint()获取鼠标所指处窗口的handle,然后给向上找此handle属于哪个Application,再用SetWindowsHook()函数给此Application加钩子,其详细说明参见MSDN,我就不多说了,但要注意:钩子函数本身要放在DLL中,否则会钩不住。在钩住一个应用程序后,系统向它发的消息或事件都会先送到你的钩子函数,然后再由你决定是原样
    传给该程序或是作一些处理。