c# - c# - GetForegroundWindow 某台电脑 获取代码有误?
问题描述
我在一些计算机中遇到了一个非常奇怪的问题
当我想抓取“In action ie Browser”时,bug 有些使用GetForegroundWindow() 生成的代码是错误的。
[DllImport("user32.dll")]
static extern IntPtr GetForegroundWindow();
private void btnAi_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
Process[] processes = Process.GetProcesses();
foreach (Process p in processes)
{
if (!p.ProcessName.Equals("Idle"))
{
if (p.MainWindowHandle != IntPtr.Zero)
{
listBox1.Items.Add(p.ProcessName + "-" + p.MainWindowHandle);
}
}
}
}
MWH = GetForegroundWindow(); // IE 11 --> 67118
GetForegroundWindow()
获取编号为 67118,但进程列表 IE 11 处理程序编号为 67212 ???
有的电脑能抓到正确的号码,有的电脑抓不到正确的号码
我已经确认windows版本。(Win 7 32bit)</p>
IE 版本 (IE 11.0.75)
是一致的所以我不知道问题出在哪里。
错误某些计算机是准确的
解决方案
推荐阅读
- filesystems - moosefs - 我在“sustained”文件夹中有一些挥之不去的文件(挂载-o mfsmeta),我该如何清理?
- node.js - 如何删除双引号
- java - Android 应用程序中的“无法解决”异常
- codeigniter - 此表单和选择选项有问题,并且电子邮件未发送
- wayland - 如何在不相关的代码部分之间共享wayland显示连接
- node.js - 节点:等待异步多个图像加载完成
- sql - 将过滤器应用于铸造柱
- html - 引导网格,在 750 像素处折叠
- javascript - 尝试使用动态列旋转表
- c# - 如何将模型列表转换为 modelVM-s 的集合?