目前遇到一个难点,写一个dll键盘钩子,钩子触发之后要向主程序传一个整数值,主程序switch然后进行相应操作。这个键盘钩子是没问题的,用的DLL全局键盘钩子,传值起初用的是Sendmessage,结果发现只有鼠标焦点在桌面的时候才可以Sendmessage,其他情况下一律无效。比如鼠标焦点在qq上,在ie上,在其他程序上都无效。但是键盘钩子可以触发。搞了一大下午没搞明白怎么回事。现在想想其他办法。求大佬指点!仅传两位数的整数值,求简单方法!
现有代码:m_hwnd是主程序传过来的句柄。
可以做共享内存 即dll共享节
你可以用共享内存的方式 或者 在dll中增加set get 变量访问端接口函数,或者 用sendmessage 函数 需要设置接收消息的窗口句柄
发送MESSAGE信号
发送MESSAGE信号里面,可以填充参数
刚刚自己代码里写的 传了一个结构体给主程序