jjzjj

GetForegroundWindow

全部标签

windows - 如何使用批处理获取前景窗口?

我试图获取前景窗口并将其写入文件。经过几次尝试,我只得到了任务列表。现在我发现了这段代码,但它对我不起作用:Add-Type@"usingSystem;usingSystem.Runtime.InteropServices;publicclassTricks{[DllImport("user32.dll")]publicstaticexternIntPtrGetForegroundWindow();}"@$a=[tricks]::GetForegroundWindow()get-process|?{$_.mainwindowhandle-eq$a}谢谢:)

c# - 如果多个应用程序实例正在运行,如何获取应用程序的事件/前台实例?

我正在尝试与用户正在其中工作的VisualStudio应用程序实例进行交互,即在前台的那个。我正在使用GetActiveObject()获取VS的实例。但是,如果有多个VS实例在运行,它总是给出第一个实例(第一个打开的实例)。我尝试使用AccessibleObjectFromWindow()并使用Spy++我将VS的窗口类作为“HwndWrapper”,但“hr”值变为负值。代码如下:if(hwnd!=null){EnvDTE80.DTE2dte=null;inthwndChild=0;EnumChildCallbackcb=newEnumChildCallback(EnumVisua

c# - 通过 SendMessage 或其他方式异步 GetForegroundWindow?

有没有一种方法可以在焦点从任何窗口更改到另一个窗口(甚至在Windows应用程序之间)时得到通知,这样我就可以在用户更改焦点时立即调用我的委托(delegate)?我一直在想我可能只需要做轮询:(:(每1秒并调用GetForegroundWindow但我真的不想这样做。 最佳答案 SetWinEventHook()可能是你最好的选择;您可以监听EVENT_SYSTEM_FOREGROUND以监听前景窗口的变化-或者甚至监听EVENT_OBJECT_FOCUS以监听应用程序和控件内更精细的焦点变化。您需要将其与WINEVENT_OUT

java - 使用 JNA 获取 GetForegroundWindow();

我在之前的帖子中问过类似的问题(https://stackoverflow.com/questions/5206633/java-find-out-what-application-window-is-in-focus),但有人指导我使用JNI,但我并没有取得太大的成功......我已经阅读了一些教程,虽然有些教程工作正常,但其他的难道我还是得不到我需要的信息,就是前台窗口的标题。现在我正在研究JNA,但我不知道如何访问GetForegroundWindow()...我想我可以在使用此代码(在另一个线程上找到)获得窗口句柄后打印文本:importcom.sun.jna.*;import