掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
FinderSystem等のツールで取得できないハンドルを取得するには? (ID:126285)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
>そもそもウィンドウハンドルを全て取得することは不可能なのでしょうか? 実際にウィンドウがあるならば、EnumChildWindow で取得できると 思いますが……実際のコードはどのようになっていますか? >「Windowless Control」に関しては知識がないのですが >名前からして、ウィンドウハンドルを取得できないよう >コントロールへ設定するということでしょうか・・・ 取得できないようにする、というのとはちょっと異なるかも。 ウィンドウレス コントロールは、文字通り「ウィンドウでは無い」ので、 そもそもウィンドウハンドル(hWnd)自体が存在しない、という事です。 つまり、実際にはあるのに取得できないようになっている、という事ではなく、 そもそも hWnd 自体が無いので、取得のしようが無い、という話になります。 ゆえに、まずはそのコントロールがウィンドウを持っているのかどうかが 重要になります。"Accessible explorer" を使うと、ウィンドウを持たない コンポーネントも取り出せる可能性があるので、試してみてください。 Accessible Explorer http://msdn.microsoft.com/library/en-us/msaa/msaaccgd_6alu.asp なお、走査対象がウィンドウレスだった場合、Accessible Explorer 画面の "Windows:"欄には、親ウィンドウのハンドルが表示される事になります。 > 同様に子ウィンドウハンドルの値は0になってしまいます ウィンドウハンドルが 0 というのも、奇妙な話に聞こえるのですが、もしかしたら、 APIの使い方が間違っていて、ゼロになっている可能性も捨て切れませんね。 ただ、FinderSystem で捕らえられないのであれば、おそらく、Windowless なのでしょう。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.