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。

如果函数失败,则返回值可以是以下错误代码之一或 系统错误代码之一。

返回代码 说明
ERROR_ACCESS_DENIED
拒绝访问。 如果 lpAccount 参数中传递的帐户名称没有足够的访问权限,则返回此错误。
ERROR_INVALID_PARAMETER
参数不正确。
NERR_SetupNotJoined
计算机当前未加入域。
NERR_SetupDomainController
此计算机是域控制器,不能从域取消加入。

注解

重命名域计算机只能由属于目标计算机上的管理员本地组成员、也是域中管理员组的成员或对域具有帐户操作员权限的用户执行。 如果远程调用 NetRenameMachineInDomain 函数,则必须提供凭据,因为在这种情况下无法委派凭据。

不同进程或同一进程的不同线程不应同时调用 NetRenameMachineInDomain 函数。 这种情况会使计算机处于不一致状态。

NERR_SetupNotJoinedNERR_SetupDomainController返回值在 Lmerr.h 头文件中定义。 此头文件由 Lm.h 头文件自动包含,不应直接包含。

调用 NetRenameMachineInDomain 函数后,需要重新启动系统才能完成操作。

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 lmjoin.h (包括 Lm.h)
Library Netapi32.lib
DLL Netapi32.dll

另请参阅

NetAddAlternateComputerName

NetEnumerateComputerNames

NetRemoveAlternateComputerName

NetSetPrimaryComputerName

NetUnjoinDomain

网络管理功能

网络管理概述

SetComputerNameEx