-3
我想知道是否有方法通过使用Visual Basic或VB脚本在计算机上更改域。我必须nanualy超过100个PC转移到另一个域。通过运行可自动更改计算机上的域的应用程序将会很有用。VB更改PC的域名
我想知道是否有方法通过使用Visual Basic或VB脚本在计算机上更改域。我必须nanualy超过100个PC转移到另一个域。通过运行可自动更改计算机上的域的应用程序将会很有用。VB更改PC的域名
您可以使用Win32_ComputerSystem
WMI类,例如,在VBScript:
Const JOIN_DOMAIN = 1
Const ACCT_CREATE = 2
domain = "DOMAIN"
username = "user"
password = "pass"
ou = Null 'create the computer object in the default location
Set net = CreateObject("WScript.Network")
Set wmi = GetObject("winmgmts:{impersonationLevel=impersonate,(Shutdown)}!" _
& "//./root/cimv2")
Set computer = wmi.Get("Win32_ComputerSystem.Name='" & net.ComputerName & "'")
result = computer.JoinDomainOrWorkgroup(domain, password, _
domain & "\" & username, ou, JOIN_DOMAIN + ACCT_CREATE)
If result <> 0 Then
WScript.Echo "Domain join failed (" & result & ")."
WScript.Quit result
End If
For Each computer In wmi.ExecQuery("SELECT * FROM Win32_OperatingSystem")
computer.Reboot
Next
,或者你可以掏出到netdom
命令:
netdom join %COMPUTERNAME% /domain:DOMAIN /userd:DOMAIN\USER /passwordd:PASS
shutdown -r -t 0
见'WMIC COMPUTERSYSTEM呼叫/'?这是win32_computersystem的别名。 – phd443322
这是一个示例wmic命令,用于查询computername.txt中列出的计算机的事件日志。 'wmic /node:"@%userprofile%\desktop\ComputerName.txt“/output:"%userprofile%\desktop\EventLog.html”/ failfast:PATH Win32_NTLogEvent where(EventIDentifier = 42 or eventidentifier = 1003)get/format :hform' – phd443322
以下是来自Join文档的一些示例代码(您需要阅读)示例代码[VBScript] 以下VBScript示例将计算机加入到域中,并在Active Directory中创建计算机的帐户。 CONST JOIN_DOMAIN = 1 CONST ACCT_CREATE = 2 CONST ACCT_DELETE = 4 CONST WIN9X_UPGRADE = 16 CONST DOMAIN_JOIN_IF_JOINED = 32 CONST JOIN_UNSECURE = 64 CONST MACHINE_PASSWORD_PASSED = 128 CONST DEFERRED_SPN_SET = 256 CONST INSTALL_INVOCATION = 262144 strDomain =“ FABRIKAM “ strPassword = ”ls4k5ywA“ – phd443322