Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


exo, машины не в домене.

Цитата Daemonstar:
добавить массив пользователей , которых лочить не нужно? »
Попробуйте так (не проверялось!):
читать дальше »
Код: Выделить весь код
Option Explicit

Dim objDictExcludeUsers

Dim strComputer

Dim objIADsContainer
Dim objIADsUser
Dim dtLastLogon


Set objDictExcludeUsers = WScript.CreateObject("Scripting.Dictionary")

With objDictExcludeUsers
	.Add "Иванов", ""
	.Add "Петров", ""
	.Add "Сидоров", ""
End With

For Each strComputer In Array("Machine01", "Machine02", "MachineN")
	WScript.Echo "[" & strComputer & "]:"
	
	Set objIADsContainer = GetObject("WinNT://" & strComputer & ",computer")
	
	objIADsContainer.Filter = Array("user")
	
	For Each objIADsUser In objIADsContainer
		On Error Resume Next
		dtLastLogon = CDate(objIADsUser.LastLogin)
		
		If Err.Number = 0 Then
			On Error Goto 0
			
			If DateDiff("d", dtLastLogon, Now()) > 90 Then
				If Not objDictExcludeUsers.Exists(objIADsUser.Name) Then
					WScript.Echo "    " & objIADsUser.Name & vbTab & dtLastLogon
					
					objIADsUser.AccountDisabled = True
					objIADsUser.SetInfo
				End If
			End If
		End If
		
		On Error Goto 0
	Next
Next

Set objDictExcludeUsers = Nothing

WScript.Quit 0
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:32, 28-05-2013 | #9