我正在开发的桌面应用程序需要知道在应用程序运行时哪些窗口处于活动状态。 目前它每250毫秒执行GetForegroundWindow()调用( user32.dll )。 这个方法不是很准确。
是否有任何Windows(WINAPI?)事件每次激活(聚焦)窗口更改时触发? 我想订阅我的callback函数。
谢谢。
应用程序池的.NET版本可以自行更改吗?
InvokeHelper()抛出Access被拒绝exception
Process.Start()在Windows 2012 R2上不起作用
控制Windows 7的任务栏分组为我的应用程序
ShowDialog返回types:窗体与窗口
如何查看exe的SmartScreen声誉得分?
如何在C#系统中设置HotKey
使用installutil从具有多个服务的可执行文件安装单个服务
插入位置/位置在任何应用程序内
是否值得同步I / O密集的线程,以提高总磁盘性能?
是的,你可以使用SetWinEventHook函数。
hEvent = SetWinEventHook(EVENT_SYstem_FOREGROUND,EVENT_SYstem_FOREGROUND,NULL,WinEventProcCallback,WINEVENT_OUTOFCONTEXT | WINEVENT_SKIPOWNPROCESS); ....... VOID CALLBACK WinEventProcCallback ( HWINEVENTHOOK hWinEventHook,DWORD dwEvent,HWND hwnd,LONG idobject,LONG idChild,DWORD dwEventThread,DWORD dwmsEventTime) { /* your code here */ }
有WM_ACTIVATE消息 ,它被发送到激活和停用的窗口。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。