Option Explicit ? Описываем используемые переменные. Dim sUserName, sDomain, oUser, sComputer, sPword1, sPword2, _ sPword3, oNet, oComputer, pw, vbClrf ? Метка A Set oNet = CreateObject(«WScript.Network») sUserName = oNet.UserName ? Конец метки A sDomain = oNet.UserDomain sComputer = oNet.ComputerName ? Метка B Set oComputer = GetObject(«WinNT://» & sDomain & «/» & _ sComputer & «,computer») If oComputer.OperatingSystemVersion < 5.1 Then Call CheckPwd Else Call HidePwd End If ? Конец метки B ? Метка C Set oUser = GetObject(«WinNT://» & sDomain & «/» & sUserName & _ «,user») oUser.ChangePassword sPword1, sPword2 WScript.Echo «Your password has been changed.» ? Конец метки C Sub CheckPwd ? Выводим на экран приглашение ввести текущий пароль и сохраняем его в sPword1. sPword1 = InputBox(«Please type your current password.», _ «Hello, «&sUserName&»!») ? Принимаем новый пароль и сохраняем его в sPword2. sPword2 = InputBox(«Please type your new password.», _ «Enter New Password») ? Подтверждаем новый пароль. sPword3 = InputBox(«Please confirm the new password.», _ «Confirm New Password») ? Сравниваем два новых пароля и подтверждаем их совпадение. If sPword2 <> sPword3 Then MsgBox(«The passwords do not match.») _ : Call CheckPwd End Sub Sub HidePwd ? Создаем объект Scriptpw. Set pw = CreateObject(«ScriptPW.Password») ? Принимаем текущий пароль и сохраняем его в sPword1. WScript.StdOut.Write «Please type your current password.» _ : WScript.Echo vbClrf sPword1 = pw.GetPassword() ? Выводим на экран приглашение ввести новый пароль и сохраняем его в sPword2. WScript.StdOut.Write «Please type the new password.» _ : WScript.Echo vbClrf sPword2 = pw.GetPassword() ? Подтверждаем новый пароль. WScript.StdOut.Write «Confirm the new password.» _ : WScript.Echo vbClrf sPword3 = pw.GetPassword() ? Убеждаемся, что новый пароль введен правильно. If sPword2 <> sPword3 Then WScript.Echo «The passwords « _ & «do not match.» : Call HidePwd End Sub