在Windows 7中通过WMI重命名计算机

我无法通过WMI重命名本地计算机。

我正在关注MSDN文档(而不是遵循它 – 试图获得某种结果),但我似乎无法使Win32_ComputerSystem.Rename()方法工作。

Set colComputers = objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystem") For Each objComputer in colComputers If StrComp(objComputer.Name, Left(objNewComputerName, 15), vbTextCompare) <> 0 Then errCode = objComputer.UnjoinDomainOrWorkgroup() If errCode <> 0 Then MsgBox "Error leaving domain/workgroup. Error: " & errCode End If errCode = objComputer.Rename(objNewComputerName) If errCode <> 0 Then MsgBox "Error changing computer name from '" & objComputer.Name & "' to '" & Left(objNewComputerName, 15) & "'. Error: " & errCode Else objComputer.JoinDomainOrWorkgroup domain, password, username ' Blindly reboot after attempting to join workgroup/domain Set colOs = GetObject("winmgmts:{(Shutdown)}root\cimv2") For Each objOs in colOs objOs.Reboot() Next End If End If Next 

每当我调用Rename(),我得到一个错误代码5(拒绝访问)。 所以也许我需要先离开这个域名? 当我调用UnjoinDomainOrWorkgroup(),我也得到一个错误代码5。

这是一个香草Windows 7安装,只有一个帐户,当然,这是指定为pipe理员。 我不明白为什么这不起作用。

HALP?

你有没有尝试在testing过程中禁用UAC? 我很确定这就是为什么你得到访问被拒绝的消息