Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google chrome SetWindowPos Z重新排序任意失败_Google Chrome_Winapi_Z Order - Fatal编程技术网

Google chrome SetWindowPos Z重新排序任意失败

Google chrome SetWindowPos Z重新排序任意失败,google-chrome,winapi,z-order,Google Chrome,Winapi,Z Order,我正在构建一个应用程序,它在其他应用程序之上显示一个透明的覆盖层。我在覆盖图中显示了一些额外的信息。每当我检测到带有覆盖层的应用程序从用户处接收到焦点(即,单击了窗口),我都会检查覆盖层窗口是否位于顶部,如果不在顶部,我会按Z顺序将应用程序移动到覆盖层下,这样我的覆盖层位于顶部,而原始应用程序仍然具有键盘/鼠标焦点 这适用于除谷歌Chrome以外的所有应用程序。对于Chrome来说,它可以正常工作一段时间,但在任意时间之后,我的看门狗再也不能将Chrome置于我的覆盖之下。以前工作的SetWin

我正在构建一个应用程序,它在其他应用程序之上显示一个透明的覆盖层。我在覆盖图中显示了一些额外的信息。每当我检测到带有覆盖层的应用程序从用户处接收到焦点(即,单击了窗口),我都会检查覆盖层窗口是否位于顶部,如果不在顶部,我会按Z顺序将应用程序移动到覆盖层下,这样我的覆盖层位于顶部,而原始应用程序仍然具有键盘/鼠标焦点

这适用于除谷歌Chrome以外的所有应用程序。对于Chrome来说,它可以正常工作一段时间,但在任意时间之后,我的看门狗再也不能将Chrome置于我的覆盖之下。以前工作的SetWindowPos无法按Z顺序重新排序窗口。调用SetWindowPos不会返回错误


你知道Google Chrome为什么对Z排序如此特别吗?

我建议你将覆盖窗口移到应用窗口上方,而不是尝试将应用窗口移到覆盖窗口下方,因为应用程序窗口可以包含阻止你尝试做的任何事情的代码。只是一个猜测:当你玩Z-order游戏时,Google Chrome可能也会这样做。无论如何,您需要进一步调查应用程序是如何失败的。您可以通过调用来确定窗口的相对位置。您可以将其添加到诊断代码中,或编写可从调试器的即时窗口使用的调试器扩展。如果您尚未使用远程调试,则应该考虑使用远程设备或虚拟机来进行远程调试。