防止Windows应用窃取焦点 我在C++中创建了一个Windows应用程序,我想让它在我运行它时,不会从当前窗口中的任何一个窗口窃取焦点(或者可能窃取焦点并立即返回)。我没有创建任何窗口,因此我不确定如何更改窗口样式,我的程序在后台运行 < >我找不到任何对C++有用的答案,有什么办法可以做到吗?< /p> < p>请确保在使用 CurATE窗口>(代码>时使用扩展样式 WSXExxNoTycase。 .

防止Windows应用窃取焦点 我在C++中创建了一个Windows应用程序,我想让它在我运行它时,不会从当前窗口中的任何一个窗口窃取焦点(或者可能窃取焦点并立即返回)。我没有创建任何窗口,因此我不确定如何更改窗口样式,我的程序在后台运行 < >我找不到任何对C++有用的答案,有什么办法可以做到吗?< /p> < p>请确保在使用 CurATE窗口>(代码>时使用扩展样式 WSXExxNoTycase。 .,c++,windows,C++,Windows,当您通过单击EXE或快捷方式启动应用程序时,Windows资源管理器将聚焦,而不是应用程序。启动应用程序的唯一方法,而不是让Windows资源管理器关注的是当Windows启动时,通过注册表项启动程序。可能找到的复制方法是C++的WrONMG?我已经尝试将当前窗口句柄和Enable WINDOWS()设置为false,也设置SETActuvWINDOWS(),他们中没有一个为我工作。你是如何运行这个程序的?它将是处理键盘快捷键的程序(浏览器?)的焦点。对此,您可能无能为力。我已经在其他几个线程上

当您通过单击EXE或快捷方式启动应用程序时,Windows资源管理器将聚焦,而不是应用程序。启动应用程序的唯一方法,而不是让Windows资源管理器关注的是当Windows启动时,通过注册表项启动程序。

可能找到的复制方法是C++的WrONMG?我已经尝试将当前窗口句柄和Enable WINDOWS()设置为false,也设置SETActuvWINDOWS(),他们中没有一个为我工作。你是如何运行这个程序的?它将是处理键盘快捷键的程序(浏览器?)的焦点。对此,您可能无能为力。我已经在其他几个线程上看到WS_EX_noactive,但我没有使用CreateWindowEx(),我根本没有创建窗口。。。应用程序被隐藏并在后台运行,但它仍然从当前窗口窃取焦点。我还编辑了这个问题,使它更清晰如果你不创建一个窗口,焦点在哪里?它只是处于边缘?你打字的时候它就不在了?这几乎像是一个Windows错误:GetActiveWindow()和::GetFocus()是否只返回null?奇怪的