<Return[E]><Top>

EnumWindows

Declare Function Api_EnumWindows& Lib "user32" Alias "EnumWindows" (ByVal lpEnumFunc&, ByVal lParam&)

Declare Function EnumWindows Lib "user32" Alias "EnumWindows" (ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long

画面上のすべてのトップレベルウィンドウを列挙する。この関数を呼び出すと、各ウィンドウのハンドルが順々にアプリケーション定義のコールバック関数に渡される。EnumWindows 関数は、すべてのトップレベルリンドウを列挙し終えるか、またはアプリケーション定義のコールバック関数から 0(FALSE)が返されるまで処理を続ける。

パラメータ
lpEnumFunc
    アプリケーション定義のコールバック関数へのポインタを指定する。
lParam
    コールバック関数に渡すアプリケーション定義の値を指定する。

戻り値
    関数が成功すると、0 以外の値が返る。
    関数が失敗すると、0 が返る。拡張エラー情報を取得するには、 関数を使う。
    EnumWindowsProc 関数が 0 を返すと、戻り値は 0 になる。

解説
    EnumWindows 関数は、子ウィンドウは列挙しない。ただし、WS_CHILD スタイルを持つ、システムにより所有されたいくつかのトップレベ

    ルウィンドウは例外である。
    この関数を呼び出すと、GetWindow 関数をループ処理で呼び出すよりも信頼性の高い結果が得られる。GetWindow 関数を呼び出してトッ

    プレベルウィンドウを列挙すると、無限ループに陥ったり、すでに破棄されているウィンドウのハンドルを参照する危険性がでてくる。