我想知道用java编写的应用程序是否可以在其他第三方应用程序(如编辑器,办公应用程序等)中监视事件(如文件单击菜单或编辑菜单)。
我的应用程序应该在后台运行,它应该能够捕获和修改当前焦点应用程序的事件,这些应用程序可能不一定是Java应用程序。
例如:如果用户点击文件 – >保存为选项在微软的话,那么我的应用程序应该能够接收这两个事件,也可以在需要时自动执行这些事件。
请帮忙
每次login和注销windows XP时,如何logging时间?
检测使用C#更改的活动窗口而不进行轮询
在linux中生成鼠标,键…等事件
在Ubuntu中使用C / C ++进行线路input插孔
水平边缘滚动(在linux中)Tkinter事件是什么?
提前致谢
没有root权限的linux原始input?
windows中正确的线程同步对象是什么?它允许一个线程等待另一个线程解锁它。
如何将windows事件日志刷新到磁盘?
是否有可能通过windows键(可能没有挂钩)捕获windows开始菜单popup窗口?
perf事件文档
我从来没有在Java中这样做过,但是由于你正在处理Win32,所以我至少可以提出本地部分。 你正在寻找的是钩在系统上的其他进程。 为此,你将不得不写一个本地DLL。 这是一个常用的技术,你会很容易地找到很多关于它的信息。 从MSDN 使用Hooks是一个很好的起点。
一旦将DLL注入到系统中的所有其他进程中,就必须弄清楚如何识别出您真正感兴趣的那些。您将如何做,这取决于您实际正在尝试做什么。 为了更好地理解在不同的动作上发送的消息,你可以使用VS自带的Spy ++ 。
最后,你必须在你的本地DLL和你的Java程序之间建立一些通信。 这是我不熟悉的部分:你将不得不使用JNI 。 幸运的是,JNI是一个很好的主题,你可以在这个网站上找到很多建议。
总结
以上是内存溢出为你收集整理的进程间通信全部内容,希望文章能够帮你解决进程间通信所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
请登录后查看评论内容