最終 更新日 2024/04/20 2021/03/01 何も無い デスクトップにも 配置されている見えない ウィンドウについて書き留めておこうかと思います。 これらの 物は Windows 8 になって増えたのですが ウィンドウを列挙してスタイルが Visible の物を ピックアップすれば デスクトップに有るウィンドウは取得出来るはずですが 取得しても デスクトップには 見えない物が有り 何らかの役割を持っているだろうと思われる物です。 下記の データは 全て 此処にある GetWinCnst の結果をコピーした物です。 Windows XP の此は単に v Class : Shell_TrayWnd Title : C:\Windows\Explorer.EXE 此はタスクバーです 場所に各々のタスクが入っていた。 v Class : Progman Title : Program Manager C:\Windows\Explorer.EXE 此が最下位に位置するタスクマネージャです。 と 言う事で TaskSwch 等も Shell_TrayWnd, Progman を除けば済みました。 此が Windows 8 から 2012 頃から Windows 8 v Class : Shell_TrayWnd Title : C:\Windows\Explorer.EXE v Class : GestureFeedbackAnimationWindow Title : C:\Program Files\Microsoft IntelliPoint\ipoint.exe v Class : EdgeUiInputWndClass Title : C:\Windows\Explorer.EXE v Class : Progman Title : Program Manager C:\Windows\Explorer.EXE v Class : EdgeUiInputWndClass Title : --- 個別情報 --- 親 ウィンドウ 無し オーナー ウィンドウ 無し Module : C:\Windows\Explorer.EXE 左: 20 上: 0 右: 1900 下: 4 幅: 1880 高さ: 4 Win Style: Hex 94000000 WS_POPUP | WS_VISIBLE | WS_CLIPSIBLINGS WinExStyl: Hex 8280080 ? | WS_EX_COMPOSITED | ? | WS_EX_TOOLWINDOW Cntrl ID : Hex 0 子ウィンドウ無し と 言う物が入る様になりました。 此は Microsoft IntelliPoint のドライバーです。 v Class : GestureFeedbackAnimationWindow Title : --- 個別情報 --- 親 ウィンドウ 無し オーナー ウィンドウ 無し Module : C:\Program Files\Microsoft IntelliPoint\ipoint.exe 左: 0 上: 0 右: 0 下: 0 幅: 0 高さ: 0 WinHandle: Hex 4016E Win Style: Hex 9C000000 WinExStyl: Hex 80800A8 Cntrl ID : Hex 0 子ウィンドウ無し v Class : Shell_TrayWnd Title : --- 個別情報 --- 親 ウィンドウ 無し オーナー ウィンドウ 無し Module : C:\Windows\Explorer.EXE 左: 0 上: 1078 右: 1920 下: 1112 幅: 1920 高さ: 34 Win Style: Hex 96000000 WinExStyl: Hex 00000088 Cntrl ID : Hex 0 子ウィンドウ 2 個 v Class : Progman Title : Program Manager --- 個別情報 --- 親 ウィンドウ 無し オーナー ウィンドウ 無し Module : C:\Windows\Explorer.EXE 左: 0 上: 0 右: 1920 下: 1080 幅: 1920 高さ: 1080 Win Style: Hex 96000000 WinExStyl: Hex 00000080 Cntrl ID : Hex 0 子ウィンドウ 2 個 ------ 此処までは 2012 頃の Windows 8 です ---------------- 2021/02/27 現在 ------- Windows10 --------------- v Class : Shell_TrayWnd Title : C:\WINDOWS\Explorer.EXE v Class : HwndWrapper[WDADesktopService.exe;;2a77ff0a-ad90-4bcc-9c45-64f3187779f5] Title : v Class : Windows.UI.Core.CoreWindow Title : Microsoft Text Input Application C:\WINDOWS\SystemApps\MicrosoftWindows.Client.CBS_cw5n1h2txyewy\InputApp\TextInputHost.exe v Class : DummyDWMListenerWindow Title : C:\WINDOWS\Explorer.EXE v Class : EdgeUiInputTopWndClass Title : C:\WINDOWS\Explorer.EXE v Class : DummyDWMListenerWindow Title : C:\WINDOWS\Explorer.EXE v Class : DummyDWMListenerWindow Title : C:\WINDOWS\Explorer.EXE v Class : Progman Title : Program Manager C:\WINDOWS\Explorer.EXE ------ 随分増えています ------------- v Class : Shell_TrayWnd Title : v Class : Start Title : スタート --- 個別情報 --- 親 ウィンドウ 無し オーナー ウィンドウ 無し Module : C:\WINDOWS\Explorer.EXE 左: 0 上: 1198 右: 1920 下: 1236 幅: 1920 高さ: 38 Win Style: Hex 96000000 WS_POPUP | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN WinExStyl: Hex 00000088 Cntrl ID : Hex 0 子ウィンドウ 5 個 v Class : HwndWrapper[WDADesktopService.exe;;2a77ff0a-ad90-4bcc-9c45-64f3187779f5] Title : --- 個別情報 --- 親 ウィンドウ 無し オーナー ウィンドウ 無し Module : C:\Program Files\WindowsApps\Microsoft.SurfaceWirelessDisplayAdapter_4.227.139.0_x64__8wekyb3d8bbwe\Desktop\WDADesktopService.exe 左: 2110 上: 1270 右: 2560 下: 1430 幅: 450 高さ: 160 Win Style: Hex 16080000 WS_VISIBLEWS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_SYSMENU WinExStyl: Hex 00080008 WS_EX_LAYERED | WS_EX_TOPMOST Cntrl ID : Hex 0 子ウィンドウ無し v Class : Windows.UI.Core.CoreWindow Title : Microsoft Text Input Application --- 個別情報 --- 親 ウィンドウ 無し オーナー ウィンドウ 無し Module : C:\WINDOWS\SystemApps\MicrosoftWindows.Client.CBS_cw5n1h2txyewy\InputApp\TextInputHost.exe 左: 0 上: 0 右: 1920 下: 1200 幅: 1920 高さ: 1200 Win Style: Hex 94000000 WS_POPUP | WS_VISIBLE | WS_CLIPSIBLINGS WinExStyl: Hex 00200000 WS_EX_NOREDIRECTIONBITMAP Cntrl ID : Hex 0 子ウィンドウ無し v Class : DummyDWMListenerWindow Title : --- 個別情報 --- 親 ウィンドウ 無し オーナー ウィンドウ 無し Module : C:\WINDOWS\Explorer.EXE 左: 0 上: 0 右: 0 下: 0 幅: 0 高さ: 0 Win Style: Hex 94000000 WS_POPUP | WS_VISIBLE | WS_CLIPSIBLINGS WinExStyl: Hex 08200080 WS_EX_NOACTIVATE | WS_EX_NOREDIRECTIONBITMAP | EX_TOOLWINDOW Cntrl ID : Hex 0 子ウィンドウ無し v Class : EdgeUiInputTopWndClass Title : --- 個別情報 --- 親 ウィンドウ 無し オーナー ウィンドウ 無し Module : C:\WINDOWS\Explorer.EXE 左: 19 上: 0 右: 1920 下: 4 幅: 1901 高さ: 4 Win Style: Hex 94000000 WS_POPUP | WS_VISIBLE | WS_CLIPSIBLINGS WinExStyl: Hex 08200080 WS_EX_NOACTIVATE | WS_EX_NOREDIRECTIONBITMAP | EX_TOOLWINDOW Cntrl ID : Hex 0 子ウィンドウ無し v Class : DummyDWMListenerWindow Title : v Class : DummyDWMListenerWindow Title : v Class : Progman Title : Program Manager v Class : SHELLDLL_DefView Title : --- 個別情報 --- 親 ウィンドウ 無し オーナー ウィンドウ 無し Module : C:\WINDOWS\Explorer.EXE 左: 0 上: 0 右: 1920 下: 1200 幅: 1920 高さ: 1200 Win Style: Hex 96000000 WS_POPUP | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN WinExStyl: Hex 00000080 WS_EX_TOOLWINDOW Cntrl ID : Hex 0 子ウィンドウ 1 個 列挙した ウィンドウの中で Visible で Shell_TrayWnd と Progman の 中に有る物が 随分増えています。有るはずですが 見えませんし 触る事も出来ません。 したがって デスクトップのタスクをなんとかする プログラムの為には これらを排除 する必要が有ります。 2021/12/05 Windows 11 になって新に変化が有りまして 此までは Class名 ApplicationFrameWindow で 設定 Windows に使用されていた物が 設定ウィンドウが 出ていない時でも デスクトップウィンドウのリストに 見えないのに 存在する様になりました。 もちろん 設定ウィンドウ が有る時は此も同じように有ります。したがって 設定ウィンドウが出ているか 出ていないかは 別の方法で判断しなければならなくなりました。 あんまり ウィンドウズ の作法から違う事をしていただくはないのですが Ms が率先して変えようとしている 様です。 同じような 事は Windous の構造も以前の様に 親 Window から 子 Windou の構造を取る物が少なくなって 居る様です。ちなみに 私の 常用している FireFox は親ウィンドウしか無くて 子ウィンドウは 有りません。 同様に Ms Edje も もう今までの Window の 構造の常識を越えています。 Windows 10 の時は 何もない デスクトップウィンドウのリスト は 11個だったのに Windows 11 は 16個に なっています。此の 16個は 自分は全て Visible だと言っています。これ以降ますます排除フィルターの お世話になりそうです。 2024/04/20 Windows 11 Release Preview KB5036980 Build 22631.3520 から又不思議なウィンドウが設定されたようです。 此は 今までと違って 常に最上位で Shell_TrayWnd ( タスクバー ) より常に上位にいます。( TaskManager よりは下位です ) ただ 面白いのは 今の所 最左上 に 1pixel ずつで マウスの直下にも掛かります。何の為なんでしょうか。 そのうち 無くなるかもしれません。もちろんタスクメニューには掛かりません。