まめ - たんたんめん

備忘録 C# / WPF 多め

(C++)他のウィンドウを強制最前面表示にするツールを作った

f:id:at12k313:20180427133931g:plain

AmazonPrimeのビデオを見ながら開発するために作りました(苦笑)

以下、実装の肝の部分です。

//! 現在のアクティブなウィンドウのハンドルを取得する
HWND activeWindowHandle= GetForegroundWindow();

//! 強制的な最前面を有効にする
SetWindowPos(activeWindowHandle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE)

//! 強制的な最前面を無効にする
SetWindowPos(activeWindowHandle, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE)