このコードを使用するプログラムがあります:
EnumWindows eW = new EnumWindows();
eW.GetWindows();
そして foreach ループ。ただし、これは Windows デスクトップ アプリのみを返し、Metro アプリは返しません。メトロ アプリで開いているすべてのウィンドウを見つける方法はありますか? また、Metro ランチャーを見つけるにはどうすればよいですか。どうすればこれを行うことができますか?
このコードを使用するプログラムがあります:
EnumWindows eW = new EnumWindows();
eW.GetWindows();
そして foreach ループ。ただし、これは Windows デスクトップ アプリのみを返し、Metro アプリは返しません。メトロ アプリで開いているすべてのウィンドウを見つける方法はありますか? また、Metro ランチャーを見つけるにはどうすればよいですか。どうすればこれを行うことができますか?
アプリケーションにマニフェスト ファイルを追加し、uiaccess=true を設定する必要があります。
Microsoft ガイド: http://msdn.microsoft.com/en-us/library/bb756929.aspx
uiaccess フラグが true に設定されたアプリケーションで EnumWindows を使用すると、alt-tab 内のすべてのウィンドウが生成され、さらにいくつかのウィンドウが生成されます (フィルターで除外する必要がある場合があります)。