|
|
1
1
我正在寻找相同的-我有一个应用程序,保持在屏幕上打开,用户可以调用我的应用程序按钮,一旦他们进入三个第三方应用程序之一。 当他们单击我的应用程序上的按钮时,我需要确定他们最后使用的三个应用程序中的哪一个,以便知道与哪个数据库对话。我一直在关注GetForeGroundWindow和GetWindow,但是我从GetWindow获得的窗口句柄总是指一个标题为M的窗口。我使用了托管Windows API工具中的Winternal Explorer工具,我可以找到返回的M句柄,它是我所追求的进程的“子进程”——但从这个角度来看我无法获取进程名称。 我用简单的windows窗体制作了一个小的示例应用程序-我启动它,然后将记事本作为焦点,然后单击我的按钮,我得到了句柄-但是当查看所有进程的MainWindowHandle时,它没有列出,但使用Winternal资源管理器,我可以看到这是记事本进程的一个子进程。 关于为什么只返回此子进程句柄而不是实际进程句柄,有什么建议吗?? 示例代码如下-在Windows XP sp 3计算机上运行
|
|
|
2
0
在创建自己的应用程序窗口之前,请调用GetForeGroundIndow。 否则,请调用GetWindow(your_hwnd,GW_HWNDNEXT)以查找指定窗口下方的下一个窗口。 |
|
|
3
0
没有现成的方法可以按Z顺序获取Windows上打开的应用程序列表。
下面的代码在中实现了这一点
这个 词典 窗把手 窗口名 作为它的价值。
|
|
|
A B · C#Excel自动调整列避免长文本时出错 1 年前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 1 年前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |