怎么实现某个进程里的消息扑捉 我有一个应用程序,点最小化以后总是不能缩小到右下角,而是留在任务栏上,我想请教;我可不可以在该进程中放一个挂钩扑捉最小化消息,然后利用GetMsgProc()实现当点击窗口最小化时,可以缩小到右下角并出现一个图标,我可以从右下角重新激活该应用程序窗口?有高人具体指点一下思路吗?小弟不胜感激! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那个应用程序没有这个功能,不知道开发这个软件的人是怎么想的,最小化以后根本无法最小化到系统托盘,而还在任务栏上。我看windows核心编程22章,想是不是利用挂钩来注入DLL来实现这个功能?有高手指点么? DLL钩子注入不知可行不可行,不过如果能找到进程,可以尝试向进程通信…… 可以用Hook,不过Hook的不利影响较多,能不用尽量不要用。提一种简单的方法:你的程序定时检查目标窗口状态,发现目标窗口最小化后将其隐藏,并显示图标。如果觉得定时检查不好,可以用另一种方式:做一个DLL,用远程线程方式将其注入到目标进程,DLL通过SetWindowLong修改目标窗口的窗口函数地址,使窗口消息先经过自己的函数,在自己的函数中判断最小化消息并做处理。 这位大虾说的不错。我觉得还是做DLL好些。有不明白的,再上来请教! mfc 中为什么单文档程序中的 view类中可以直接引用doc类? power point viewer的安装路径在注册表中的键值 对话框类程序退出时报错!! 有关CreateInstance的问题 关于内存空间的开辟的问题 用directshow录像问题 怎样将Access数据库导入和导出为XLS格式啊? WriteFile()返回值的错误吗?! 怎样把一个工程中的类加入到新的工程中 大虾接招:PCI问题 boost库令人头疼的地方 activex,能主动给调用它的窗体返回一个string吗??
提一种简单的方法:你的程序定时检查目标窗口状态,发现目标窗口最小化后将其隐藏,并显示图标。
如果觉得定时检查不好,可以用另一种方式:做一个DLL,用远程线程方式将其注入到目标进程,DLL通过SetWindowLong修改目标窗口的窗口函数地址,使窗口消息先经过自己的函数,在自己的函数中判断最小化消息并做处理。
这位大虾说的不错。我觉得还是做DLL好些。有不明白的,再上来请教!