0

MSDNは、関数について次のように述べていGetWindow()ます。

この関数は 、ループEnumChildWindowsで呼び出すよりも信頼性があります。GetWindowこのタスクを実行するために呼び出すアプリケーションGetWindowは、無限ループに巻き込まれたり、破棄されたウィンドウへのハンドルを参照したりするリスクがあります。

EnumChildWindowsすべてのウィンドウを一覧表示することにのみ関心がある場合、使用は問題なく機能します。ただし、提供する追加のzオーダー機能が必要な場合はどうなりGetWindowますか?を使用してzオーダーで並べ替えられたすべてのウィンドウを見つけることができませんEnumChildWindows

これは、そうするための「安全な」方法がないことを意味しますか?

4

1 に答える 1

1

Z オーダーが必要な場合は、GetWindow() を使用しますが、前述の懸念事項に注意してください。

ウィンドウが複数回表示される場合は、停止してください。その後、ハンドルを介して返されたウィンドウを参照するときは、失敗に備えてください。

于 2012-10-20T20:11:56.390 に答える