2010-08-20 5 views
0

Мы используем Configuration managar для установки операционных систем, что по какой-то гениальной причине не имеет простого способа установить правила для имен машин.Изменение имени компьютера

Так что им нужен C# API, который позволяет мне изменять имя компьютера (NETBIOS) и одновременно менять его в Active Directory. Я хочу установить имя AFTER im подключенное к AD, чтобы я мог проверить, было ли у машины старое имя и принадлежало ни одному spesfic OU.

Я пробовал:

[DllImport("kernel32.dll", CharSet = CharSet.Auto)] 
static extern bool SetComputerNameEx(COMPUTER_NAME_FORMAT NameType,string lpBuffer); 

Это один делает изменения имени локального компьютера, но это будет коррумпированный соединение AD.

+0

Изменение имени компьютера требует перезагрузки. –

+0

Это верно, но с помощью SetComputerNameEx он теряет связь с Active Directory – EKS

ответ

1

Для всех операционных систем Windows с XP вы можете просто использовать command-line program NETDOM.EXE для изменения имени компьютера как на самой машине, так и на Active Directory ... программирования не требуется.

+0

netdom не доступен в Windows 10 – Nissim

1
string newName = "newName"; 

RegistryKey key = Registry.LocalMachine.OpenSubKey("SYSTEM", true).OpenSubKey("CurrentControlSet", true).OpenSubKey("Services", true).OpenSubKey("tcpip", true).OpenSubKey("Parameters", true); 

key.SetValue("Hostname", newName); 
key.SetValue("NV Hostname", newName); 
+0

Спасибо, что нашли время ответить, но я не думаю, что это будет работать с активным каталогом. – EKS

Смежные вопросы