NetRenameMachineInDomain 函数 (lmjoin.h)
NetRenameMachineInDomain 函数更改域中计算机的名称。
语法
NET_API_STATUS NET_API_FUNCTION NetRenameMachineInDomain(
[in] LPCWSTR lpServer,
[in] LPCWSTR lpNewMachineName,
[in] LPCWSTR lpAccount,
[in] LPCWSTR lpPassword,
[in] DWORD fRenameOptions
);
parameters
[in] lpServer
指向常量字符串的指针,该常量字符串指定要调用函数的计算机的 DNS 或 NetBIOS 名称。 如果此参数为 NULL,则使用本地计算机。
[in] lpNewMachineName
指向指定计算机新名称的常量字符串的指针。 如果指定,则也会更改本地计算机名称。 如果此参数为 NULL,则函数假定已调用 SetComputerNameEx 函数。
[in] lpAccount
指向常量字符串的指针,该字符串指定在连接到域控制器时要使用的帐户名称。 如果此参数为 NULL,则使用调用方上下文。
[in] lpPassword
如果 lpAccount 参数指定帐户名称,则此参数必须指向连接到域控制器时要使用的密码。 否则,此参数必须为 NULL。
[in] fRenameOptions
重命名选项。 如果此参数NETSETUP_ACCT_CREATE,则 函数将重命名域中的帐户。
返回值
如果函数成功,则返回值NERR_Success。
如果函数失败,则返回值可以是以下错误代码之一或 系统错误代码之一。
返回代码 | 说明 |
---|---|
|
拒绝访问。 如果 lpAccount 参数中传递的帐户名称没有足够的访问权限,则返回此错误。 |
|
参数不正确。 |
|
计算机当前未加入域。 |
|
此计算机是域控制器,不能从域取消加入。 |
注解
重命名域计算机只能由属于目标计算机上的管理员本地组成员、也是域中管理员组的成员或对域具有帐户操作员权限的用户执行。 如果远程调用 NetRenameMachineInDomain 函数,则必须提供凭据,因为在这种情况下无法委派凭据。
不同进程或同一进程的不同线程不应同时调用 NetRenameMachineInDomain 函数。 这种情况会使计算机处于不一致状态。
NERR_SetupNotJoined和NERR_SetupDomainController返回值在 Lmerr.h 头文件中定义。 此头文件由 Lm.h 头文件自动包含,不应直接包含。
调用 NetRenameMachineInDomain 函数后,需要重新启动系统才能完成操作。
要求
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | lmjoin.h (包括 Lm.h) |
Library | Netapi32.lib |
DLL | Netapi32.dll |