WNetEnumResourceW 関数 (winnetwk.h)
WNetEnumResource 関数は、WNetOpenEnum 関数の呼び出しによって開始されたネットワーク リソースの列挙を続行します。
構文
DWORD WNetEnumResourceW(
[in] HANDLE hEnum,
[in, out] LPDWORD lpcCount,
[out] LPVOID lpBuffer,
[in, out] LPDWORD lpBufferSize
);
パラメーター
[in] hEnum
列挙インスタンスを識別するハンドル。 このハンドルは 、WNetOpenEnum 関数によって返される必要があります。
[in, out] lpcCount
要求されたエントリの数を指定する変数へのポインター。 要求された数が –1 の場合、関数は可能な限り多くのエントリを返します。
関数が成功した場合、このパラメーターが指す変数が を返すと、実際に読み取られたエントリの数が含まれます。
[out] lpBuffer
列挙結果を受け取るバッファーへのポインター。 結果は NETRESOURCE 構造体の配列として返されます。 割り当てるバッファーは、構造体とメンバーが指す文字列を保持するのに十分な大きさである必要があることに注意してください。 詳細については、「解説」を参照してください。
バッファーは、 hEnum パラメーターで指定されたハンドルを使用して次の呼び出しが行われるまで有効です。 配列内の NETRESOURCE 構造体の順序は予測できません。
[in, out] lpBufferSize
lpBuffer パラメーターのサイズをバイト単位で指定する変数へのポインター。 バッファーが小さすぎて 1 つのエントリを受け取れない場合、このパラメーターはバッファーの必要なサイズを受け取ります。
戻り値
関数が成功した場合、戻り値は次のいずれかの値になります。
リターン コード | 説明 |
---|---|
|
列挙が成功し、バッファーに要求されたデータが含まれています。 呼び出し元のアプリケーションは、 WNetEnumResource を引き続き呼び出して列挙を完了できます。 |
|
これ以上のエントリはありません。 バッファーの内容は未定義です。 |
関数が失敗した場合、戻り値はシステム エラー コード (次のいずれかの値など) になります。
リターン コード | 説明 |
---|---|
|
以降の呼び出しでは、さらに多くのエントリを使用できます。 詳細については、「解説」を参照してください。 |
|
hEnum パラメーターで指定されたハンドルが無効です。 |
|
ネットワークが利用できません。 (この条件は、 hEnum が有効性をテストする前にテストされます)。 |
|
ネットワーク固有のエラーが発生しました。 エラーの説明を取得するには、 WNetGetLastError 関数を呼び出します。 |
解説
WNetEnumResource 関数は、共有に接続されているユーザーを列挙しません。このタスクを実行するには、NetConnectionEnum 関数を呼び出します。 非表示の共有を列挙するには、 NetShareEnum 関数を呼び出します。
アプリケーションで lpBuffer パラメーターを NULL に設定し、 lpBufferSize パラメーターから必要なバッファー サイズを取得することはできません。 代わりに、アプリケーションは妥当なサイズ (16 キロバイトが一般的) のバッファーを割り当て、エラー検出には lpBufferSize の値を使用する必要があります。
例
ネットワーク上のすべてのリソースを列挙するアプリケーション定義関数を示すコード サンプルについては、「ネットワーク リソースの列挙」を参照してください。
注意
winnetwk.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして WNetEnumResource を定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | winnetwk.h |
Library | Mpr.lib |
[DLL] | Mpr.dll |