MFC静态DLL,在DLL里如何给主程序传值呢 10C

目前遇到一个难点,写一个dll键盘钩子,钩子触发之后要向主程序传一个整数值,主程序switch然后进行相应操作。这个键盘钩子是没问题的,用的DLL全局键盘钩子,传值起初用的是Sendmessage,结果发现只有鼠标焦点在桌面的时候才可以Sendmessage,其他情况下一律无效。比如鼠标焦点在qq上,在ie上,在其他程序上都无效。但是键盘钩子可以触发。搞了一大下午没搞明白怎么回事。现在想想其他办法。求大佬指点!仅传两位数的整数值,求简单方法!
现有代码:m_hwnd是主程序传过来的句柄。图片说明

5个回答

可以做共享内存 即dll共享节

PepperEggFriedRice
PepperEggFriedRice 除了这个呢?还有简单点的办法吗
接近 2 年之前 回复

你可以用共享内存的方式 或者 在dll中增加set get 变量访问端接口函数,或者 用sendmessage 函数 需要设置接收消息的窗口句柄

发送MESSAGE信号

发送MESSAGE信号里面,可以填充参数

刚刚自己代码里写的 传了一个结构体给主程序

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问