Показать сообщение отдельно
Старый 29.12.2008, 13:56   #24  
Storkich is offline
Storkich
Участник
 
149 / 10 (1) +
Регистрация: 08.03.2007
вот троян
Код:
Option Explicit

Const DirrectoryName = "D:\Session_Control\"
Const TimerInterval = 10000
Const cmdLogOff = "shutdown /l"

'Узнаю имя пользователя
Dim objNetwork, username
Set objNetwork = CreateObject("WScript.Network")
UserName = objNetwork.UserName



do
  call Test_Exit()
  WScript.Sleep TimerInterval
loop

Sub Test_Exit()
   Dim fso, f, BanUser
   Const ForReading = 1, ForWriting = 2, ForAppending = 8
   Set fso = CreateObject("Scripting.FileSystemObject")

   'Читаю Бан лист
   Set f = fso.OpenTextFile(DirrectoryName&"Ban.txt", ForReading, True)
   While not f.AtEndOfStream 
	  BanUser = f.ReadLine()
	  if BanUser = UserName then 
		'MsgBox "Он"   
		call Finish_Session()
	  else 
		'MsgBox "Не он " & BanUser
	 end if
   wend
   f.Close

  ' Set f = fso.OpenTextFile(DirrectoryName&"log.txt", ForAppending, True)
  ' f.WriteLine UserName

  ' f.Close
End Sub

sub Finish_Session()
' Имя: LogOff.vbs
' Язык: VBScript
' Описание: Завершение сеанса пользователя  
'*******************************************************************
'Option Explicit
 
' Объявляем переменные
Dim strComputer	   ' Имя компьютера
Dim strNamespace	  ' Имя пространства имен
Dim strClass		  ' Имя класса 
Dim objClass		  ' Объект SWbemObject (класс WMI)
Dim colInstances	  ' Коллекция экземпляров класса WMI
Dim objInstance	   ' Элемент коллекции
Dim fso, f
Dim sh				'Командная строка
Const ForReading = 1, ForWriting = 2, ForAppending = 8

'********************** Начало *************************************
' Присваиваем начальные значения переменным
strComputer = "."
strNamespace = "Root\CIMV2"
strClass = "Win32_OperatingSystem"

' Получаем указатель на класс WMI
Set objClass = GetObject("WinMgmts:\\" & strComputer & _
						 "\" & strNamespace & ":" & strClass)
' Создаем коллекцию экземпляров класса Win32_OperatingSystem
Set colInstances = objClass.Instances_

' Перебираем элементы коллекции 
For Each objInstance In colInstances
  ' Выводим на экран предупреждение
  'WScript.Echo "На компьютере " &  objInstance.CSNAME & VbCrLf &_
  '			"сеанс текущего пользователя будет завершен "  
  ' Для каждого экземпляра вызываем метод Win32Shutdown
  Set fso = CreateObject("Scripting.FileSystemObject")
   Set f = fso.OpenTextFile(DirrectoryName&"log.txt", ForAppending, True)
   f.WriteLine "На компьютере " &  objInstance.CSNAME & VbCrLf &_
			   "сеанс пользователя " & UserName &" завершен "  
   f.Close
  'objInstance.Win32Shutdown(0)   
  set sh = CreateObject("WScript.Shell")
  sh.Run cmdLogOff
Next
end sub