NPEnumResource 関数 (npapi.h)
NPOpenEnum によって返されるハンドルに基づいて列挙を実行します。
構文
DWORD NPEnumResource(
[in] HANDLE hEnum,
[in, out] LPDWORD lpcCount,
[out] LPVOID lpBuffer,
[in, out] LPDWORD lpBufferSize
);
パラメーター
[in] hEnum
NPOpenEnum 呼び出しから取得されたハンドル。
[in, out] lpcCount
要求されたエントリの数へのポインター。 できるだけ多くのエントリを要求0xFFFFFFFF場合があります。 呼び出しが成功すると、この場所は実際に読み取られたエントリの数を受け取ります。
[out] lpBuffer
列挙結果を受け取るバッファーへのポインター。 NETRESOURCE エントリの配列として返されます。 バッファーは、 hEnum を使用した次の呼び出しまで有効です。
[in, out] lpBufferSize
エントリの関数呼び出しに渡されるバッファーのサイズ (バイト単位) へのポインター。 バッファーが 1 つのエントリに対して小さすぎる場合は、終了時に 1 つのエントリを読み取るために必要なバイト数を含める必要があります。 この値は、戻りコードがWN_MORE_DATA場合にのみ設定されます。
戻り値
関数が成功した場合は、WN_SUCCESSを返す必要があります。 呼び出し元は、列挙を続行するために NPEnumResource を引き続き呼び出すことができます。 それ以外の場合は、次のいずれかのエラー コードが返されます。
リターン コード | 説明 |
---|---|
|
これ以上のエントリはありません。 列挙が正常に完了しました。 この場合、戻りバッファー lpBuffer の内容は未定義になります。 |
|
バッファーが小さすぎて、1 つのエントリを保持できません。 |
|
hEnum は有効なハンドルではありません。 |
|
ネットワークが存在しません。 この条件は、 hEnum が有効性をテストする前にチェックされます。 |
注釈
この関数が呼び出されると、プロバイダーは要求されたエントリ数 (または収まる最大値) をバッファーに入力する必要があります。 返される NETRESOURCE 構造体は、このような構造体の配列のように、バッファーの先頭に連続して配置する必要があります。 これらの構造体のポインターは、バッファー内の場所を指している必要があります。 したがって、これらのポインターによって参照されるデータは、構造体の配列の後のバッファーの末尾に配置する必要があります。 この情報を正しくパッケージ化するのはプロバイダーの責任です。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | npapi.h |