如何用DLL通知EXE(150分)

  • 主题发起人 主题发起人 killtimeer
  • 开始时间 开始时间
K

killtimeer

Unregistered / Unconfirmed
GUEST, unregistred user!
如何用自已做的DLL通知自已做的EXE( EXE 在最小化是收不到 DLL 发过来的 MESSAGE)
 
最小化时应该可以收到消息吧,关键是你发的对不对,你在调用dll的时候把主程序的handle传进去,在dll里向它发消息不行?
 
不是最小化时就能收到,最小化时就收不到,以前防止两个程序运行时(最小化也)能收到,消息是自已定义的,如果用SendMessage(),不是最小化也收不到,POSTMESSAGE 却在最小化时收不到,消息处理是自已编的,如下:

一个DLL的HOOK,用来取得系统的按键(如用户按了F3功能键),就发过消息来通知一下自已的EXE,EXE就执行相关的功能.

原来设计时:
一个DLL的HOOK,用来取得系统的按键(如用户按了F3功能键),就调用DLL里的相关功能,但相关功能中要用到 SetTimer API, 用了 SetTimer API 后发觉有时会出问题,所以现在只能把要调用的"相关功能"做在EXE里,用DLL得到用户按了F3功能键后再通知EXE去执行相关的功能!!!.
但一但EXE在最小化时就收不到 DLL 发过来的消息
 
看你用的是什么Hook了,如果只hook当前程,在当前程序没有获得焦点的时候是收不到的。
 
把你dll里面SetWindowsHook的那段和发送消息的那段贴出来才好判断
 
应该EXE接收到消息时执行的代码有问题! 贴这段^_^
 
最小化和隐藏时都能够收的到消息。木马的拦截键盘就是此类。
如果收不到消息就不是木马了[:D]
 
回调函数
 
重启后可以收到消息了(引用: 以前防止两个程序运行时(最小化也)能收到)

经常出现上面的情况!!!???

多谢大家了!!!
 
原来我还没给分!!!
 
多谢大家了!!!!!
 
多人接受答案了。
 
后退
顶部