API関数を使わない「ウィンドウの列挙」がわからない
いゃEnumWindows()を使えばさくっと取得できることはわかっているんですが。
実際そーいぅPgも作ったりしているんですが。
.NET Frameworkのライブラリからできないかなぁと。
Monoを使ってlinux/Macでのマルチプラットフォーム実行、って奴を試みてみたいわけです。
となると、どぅしてもAPI関数が邪魔。あくまでも.NET Frameworkの範疇で実装したい。んですよね。
ウィンドウハンドルの取得、あたりのキーワードで必死こいて探してみたわけですが、どーにもらしいところが見つかんない。
で、推測。
- 単に私の探し方が悪い、もしくは足りない。
- .NET Frameworkではウィンドウの管理をハンドル以外の何らかの概念で行っているので、「ハンドル」に固執しているかぎり見つからない。
- そもそも自分以外のアプリケーションにちょっかい出すこと自体が行儀が悪く推奨できない事柄なので、.NET Frameworkはそのような設計はされていない。