Ну, это примеры сценариев VB в этом столбце Hey Scripting Guy , но они должны быть переведены:
Как изменить пароль локального администратора для всех компьютеров в подразделении?
Set objOU = GetObject("LDAP://OU=Finance, DC=fabrikam, DC=com")
objOU.Filter = Array("Computer")
For Each objItem in objOU
strComputer = objItem.CN
Set objUser = GetObject("WinNT://" & strComputer & "/Administrator")
objUser.SetPassword("i5A2sj*!")
Next
Первая часть основана на AD, но просто используется для поиска всех машин в домене. Вторая часть (которая выполняет фактический удаленный сброс пароля) вообще не использует AD.
Итак, это в основном привязка к WinNT://<ComputeName>/<UserName>
, затем позвоните SetPassword()
.
И этот другой вопрос об изменении пароля учетной записи локального администратора уже находится в C #:
public static void ResetPassword(string computerName, string username, string newPassword) {
DirectoryEntry directoryEntry = new DirectoryEntry(string.Format("WinNT://{0}/{1}", computerName, username));
directoryEntry.Invoke("SetPassword", newPassword);
}