2013-06-27 5 views
0

Мне и не программисту было бы полезно получить помощь с VBScript, чтобы удалить все, что не является буквой или номером, из имя ПК и сохранить измененное имя. Затем присоединитесь или присоединитесь к домену.VBScript, чтобы получить имя ПК, удалите все, что не является буквой или номером (например, A-BC-123 -> ABC123)

Пример:

pc name: pc-home-543 
rename: pchome543 
join domain: homeworkplay 
restart and it all works 
+0

У вас есть список имен пользователей в txt-файле? – Amol

ответ

1

Вы можете переименовать компьютер с помощью Rename метода класса Win32_ComputerSystem WMI. Для замены не буквенно-цифровых символов используется регулярное выражение.

Set net = CreateObject("WScript.Network") 
Set wmi = GetObject("winmgmts://./root/cimv2") 

Set re = New RegExp 
re.Pattern = "[^a-z0-9]*" 
re.Global = True 
re.IgnoreCase = True 

For Each sys In wmi.ExecQuery("SELECT * FROM Win32_ComputerSystem") 
    sys.Rename re.Replace(net.ComputerName, "") 
Next 

Вам необходимо перезагрузить компьютер для изменения имени, чтобы стать эффективным:

CreateObject("WScript.Shell").Run "shutdown -r -t 0" 

Я не думаю, что вам нужно повторно войти в систему к домену после этого, но если вы делаете , вы можете сделать это с помощью метода JoinDomainOrWorkgroup того же класса WMI.