特定のホットキーが押されたときにアクティブ ウィンドウを取得しようとしていますが、私のプログラムは、現在画面に表示されているもの (Firefox、Chrome など) ではなく、アプリケーションのメイン フォームを常にアクティブ ウィンドウとして返します。ホットキーを押すと、フォームが何らかの形でアクティブと見なされ、それがフォアグラウンド ウィンドウとして返されているのではないかと思います。
これは、現在アクティブなウィンドウを取得するために使用しているものです
[DllImport("user32.dll")]
static extern IntPtr GetForegroundWindow();
public IntPtr getCurrentlyActiveWindow()
{
//Debugging
const int nChars = 256;
IntPtr handle = IntPtr.Zero;
StringBuilder Buff = new StringBuilder(nChars);
handle = GetForegroundWindow();
GetWindowText(handle, Buff, nChars);
MessageBox.Show(Buff.ToString());
return GetForegroundWindow();
}
実際のアクティブウィンドウを取得するために何ができるかについてのアイデアはありますか?