NetUseEnum 関数 (lmuse.h)
NetUseEnum 関数は、ローカル コンピューターとリモート サーバー上のリソース間のすべての現在の接続を一覧表示します。
WNetOpenEnum 関数と WNetEnumResource 関数を使用して、ネットワーク リソースまたは接続を列挙することもできます。
構文
NET_API_STATUS NET_API_FUNCTION NetUseEnum(
[in] LMSTR UncServerName,
[in] DWORD LevelFlags,
[out] LPBYTE *BufPtr,
[in] DWORD PreferedMaximumSize,
[out] LPDWORD EntriesRead,
[out] LPDWORD TotalEntries,
[in, out] LPDWORD ResumeHandle
);
パラメーター
[in] UncServerName
この関数を実行するコンピューターの UNC 名。 これがパラメーターが NULL の場合は、ローカル コンピューターが使用されます。 指定された UncServerName パラメーターがリモート コンピューターの場合、リモート コンピューターは従来のリモート アクセス プロトコル メカニズムを使用してリモート RPC 呼び出しをサポートする必要があります。
_WIN32_WINNTまたはFORCE_UNICODEが定義されている場合、この文字列は Unicode です。
[in] LevelFlags
要求されたデータの情報レベル。 このパラメーターには、次の値のいずれかを指定できます。
値 | 説明 |
---|---|
|
ローカル デバイス名とリモート リソースの共有名を指定します。 BufPtr パラメーターは、USE_INFO_0構造体の配列を指します。 |
|
接続の状態や種類など、ローカル デバイスと共有リソース間の接続に関する情報を指定します。 BufPtr パラメーターは、USE_INFO_1構造体の配列を指します。 |
|
ローカル デバイスと共有リソースの間の接続に関する情報を指定します。 情報には、接続の状態、接続の種類、ユーザー名、ドメイン名が含まれます。 BufPtr パラメーターは、USE_INFO_2構造体の配列を指します。 |
[out] BufPtr
情報構造体を受け取るバッファーへのポインター。 このデータの形式は 、Level パラメーターの値によって異なります。 このバッファーはシステムによって割り当てられ、情報が不要になったときに NetApiBufferFree 関数を使用して解放する必要があります。 関数が ERROR_MORE_DATA で失敗した場合でも、バッファーを解放する必要があることに注意してください。
[in] PreferedMaximumSize
返されるデータの推奨される最大長 (バイト単位)。 MAX_PREFERRED_LENGTHが指定されている場合、関数はデータに必要なメモリ量を割り当てます。 このパラメーターに別の値を指定すると、関数から返されるバイト数を制限できます。 バッファー サイズが不十分で、すべてのエントリを保持するには、関数は ERROR_MORE_DATAを返します。 詳細については、「 ネットワーク管理機能バッファー 」および「 ネットワーク管理機能バッファーの長さ」を参照してください。
[out] EntriesRead
実際に列挙された要素の数を受け取る値へのポインター。
[out] TotalEntries
現在の再開位置から列挙された可能性があるエントリの合計数を受け取る値へのポインター。 アプリケーションでは、この値をヒントとしてのみ考慮する必要があることに注意してください。
[in, out] ResumeHandle
検索を続行するために使用される再開ハンドルを含む値へのポインター。 最初の呼び出しではハンドルを 0 にし、後続の呼び出しでは変更しない必要があります。 ResumeHandle が NULL の場合、再開ハンドルは格納されません。
戻り値
関数が成功した場合、戻り値はNERR_Success。
関数が失敗した場合、戻り値はシステム エラー コードです。 エラー コードの一覧については、「 システム エラー コード」を参照してください。
リターン コード | 説明 |
---|---|
|
無効なパラメーターが関数に渡されました。 このエラーは、BufPtr パラメーターまたは entriesread パラメーターで NULL ポインターが渡された場合に返されます。 |
|
返すデータが増えています。 このエラーは、バッファー サイズがすべてのエントリを保持するのに不十分な場合に返されます。 |
|
要求はサポートされていません。 UncServerName パラメーターが NULL ではなく、リモート サーバーが従来のリモート アクセス プロトコル メカニズムを使用したリモート RPC 呼び出しをサポートしていない場合、このエラーが返されます。 |
|
FormatMessage を使用して、返されたエラーのメッセージ文字列を取得します。 |
解説
NetUseEnum 関数を呼び出すために、特別なグループ メンバーシップは必要ありません。 この関数は、従来のリモート アクセス プロトコルを使用してダウンレベル互換性がある場合を除き、リモート サーバー上で実行できません。
1 つのネットワーク接続に関する情報を取得するには、 NetUseGetInfo 関数を呼び出します。
この関数は、サーバー メッセージ ブロック (LAN マネージャー ワークステーション) クライアントにのみ適用されます。 NetUseEnum 関数は、分散ファイル システム (DFS) 共有をサポートしていません。 別のネットワーク プロバイダー (WebDAV または DFS 共有など) を使用して共有を列挙するには、 WNetOpenEnum、 WNetEnumResource、 WNetCloseEnum 関数を使用します。
要件
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | lmuse.h (Lm.h、Lmcons.h を含む) |
Library | Netapi32.lib |
[DLL] | Netapi32.dll |