dsBindA 函数 (ntdsapi.h)

DsBind 函数绑定到域控制器。DsBind 使用默认进程凭据绑定到域控制器。 若要指定备用凭据,请使用 DsBindWithCred 函数。

语法

NTDSAPI DWORD DsBindA(
  [in, optional] LPCSTR DomainControllerName,
  [in, optional] LPCSTR DnsDomainName,
  [out]          HANDLE *phDS
);

parameters

[in, optional] DomainControllerName

指向以 null 结尾的字符串的指针,该字符串包含要绑定到的域控制器的名称。 此名称可以是域控制器的名称,也可以是域控制器的完全限定 DNS 名称。 任一名称类型(可选)前面都可以有两个反斜杠字符。 以下所有示例都表示格式正确的域控制器名称:

  • “FAB-DC-01”
  • “\\FAB-DC-01”
  • “FAB-DC-01.fabrikam.com”
  • “\\FAB-DC-01.fabrikam.com”
此参数可以为 NULL。 有关详细信息,请参阅“备注”。

[in, optional] DnsDomainName

指向以 null 结尾的字符串的指针,该字符串包含要绑定到的域的完全限定 DNS 名称。 此参数可以为 NULL。 有关详细信息,请参阅“备注”。

[out] phDS

接收绑定句柄的 HANDLE 值的地址。 若要关闭此句柄,请将其传递给 DsUnBind 函数。

返回值

如果成功 则返回ERROR_SUCCESS,否则返回 Windows 或 RPC 错误代码。 下面是最常见的错误代码。

注解

DsBind 函数的行为由 DomainControllerNameDnsDomainName 参数的内容决定。 以下列表根据这些参数的内容描述了此函数的行为。

DomainControllerName DnsDomainName 说明
NULL NULL DsBind 将尝试绑定到本地计算机林中的全局编录服务器。
(value) NULL DsBind 将尝试绑定到 由 DomainControllerName 参数指定的域控制器。
NULL (value) DsBind 将尝试绑定到 DnsDomainName 参数指定的域中的任何域控制器。
(值

)
(value) DomainControllerName 参数优先。 DsBind 将尝试绑定到 由 DomainControllerName 参数指定的域控制器。
 

注意

ntdsapi.h 标头将 DsBind 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

   
最低受支持的客户端 Windows Vista
最低受支持的服务器 Windows Server 2008
目标平台 Windows
标头 ntdsapi.h
Library Ntdsapi.lib
DLL Ntdsapi.dll

请参阅

DOMAIN_CONTROLLER_INFO

域控制器和复制管理功能

DsBindWithCred

DsGetDcName

DsUnBind