次の方法で共有


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 を呼び出して不要になったときに、このメモリを解放する必要があります。

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

[out, optional] DnsHostName

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

戻り値

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

注釈

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

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

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

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

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

注意

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

要件

要件
サポートされている最小のクライアント Windows Vista
サポートされている最小のサーバー Windows Server 2008
対象プラットフォーム Windows
ヘッダー dsgetdc.h
Library Netapi32.lib
[DLL] Netapi32.dll

こちらもご覧ください

ディレクトリ サービス関数

DsGetDcClose

DsGetDcOpen

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

LocalFree

NetApiBufferFree

SOCKET_ADDRESS