次の方法で共有


DsGetDcNextA 関数 (dsgetdc.h)

DsGetDcNext 関数は、ドメイン コントローラー列挙操作で次のドメイン コントローラーを取得します。

構文

DSGETDCAPI DWORD DsGetDcNextA(
  [in]            HANDLE           GetDcContextHandle,
  [out, optional] PULONG           SockAddressCount,
  [out, optional] LPSOCKET_ADDRESS *SockAddresses,
  [out, optional] LPSTR            *DnsHostName
);

パラメーター

[in] GetDcContextHandle

DsGetDcOpen 関数によって提供されるドメイン コントローラー列挙コンテキスト ハンドルが含まれます。

[out, optional] SockAddressCount

SockAddresses 配列内の要素数を受け取る ULONG 値へのポインター。 このパラメーターが NULL場合、ソケット アドレスは取得されません。

[out, optional] SockAddresses

ドメイン コントローラーのソケット アドレス データを受け取る SOCKET_ADDRESS 構造体の配列へのポインター。 sockAddressCount 、この配列内の要素の数を受け取ります。

返されるすべてのアドレスは、AF_INET 型または AF_INET6型になります。 sin_port メンバーには、サーバー レコードからのポートが含まれています。 ポート 0 は、DNS から使用できるポートがないことを示します。

呼び出し元は、LocalFreeを呼び出して不要になったときに、このメモリを解放する必要があります。

SockAddressCount が NULL場合、このパラメーターは無視されます。

[out, optional] DnsHostName

ドメイン コントローラーの DNS 名を受け取る文字列ポインターへのポインター。 このパラメーターは、ホスト名が不明な場合 NULL を受け取ります。 呼び出し元は、NetApiBufferFreeを呼び出して不要になったときに、このメモリを解放する必要があります。

戻り値

成功した場合は ERROR_SUCCESS を返し、それ以外の場合は Win32 または RPC エラーを返します。 考えられるエラー値は次のとおりです。

備考

列挙をリセットするには、DsGetDcClose 呼び出して現在の列挙を閉じ、もう一度 dsGetDcOpen 呼び出して列挙を再度開きます。

DsGetDcNext によって返される DC は読み取り専用 DC (RODC) になりません。これらの DC はサイト固有のレコードと CName レコードのみを登録し、dsGetDcNext DsGetDcOpen の両方が DNS SRV レコードを検索するためです。

次の手順では、Windows Server 2008 を実行しているコンピューターから完全な DC リストを取得する方法を示します。

ドメイン コントローラーの完全な一覧を取得するには

  1. ドメイン コントローラー名 取得するには、DsGetDcName を使用します。
  2. DsBind を使用して、そのドメイン コントローラーに接続します。
  3. InfoLevel 3 (DS_DOMAIN_CONTROLLER_INFO_3) DsGetDomainControllerInfo を呼び出して、RODC を含む完全な一覧を取得します。

手記

dsgetdc.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして DsGetDcNext を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista
サポートされる最小サーバー Windows Server 2008
ターゲット プラットフォーム の ウィンドウズ
ヘッダー dsgetdc.h
ライブラリ Netapi32.lib
DLL Netapi32.dll

関連項目

Directory Service Functions

DsGetDcClose の

DsGetDcOpen

ドメイン コントローラー の列挙の

LocalFree

NetApiBufferFree を する

SOCKET_ADDRESS