ПК и VBS

Приветствую всех!
Ооооочень давно я тут не писал в блоге.
Решил сегодня поделиться полезной информацией, но в начале хочу поздравить свой город Хабаровск с днем основания 155 лет ему сегодня исполнилось!

И так, на днях, на работе пришлось столкнуться с такой ситуацией: надо было узнать имя пользователя (имя учетной записи) на удаленном компе в сети.
Думал как обойтись малой кровью... нашел тут скрипт на vbs.
Попробовал - получилось. Но там скрипт был явно не доработанный. Вот решил не зная vbs языка подкорректировать и чуть усовершенствовать его.
Сделал проверку на не внесенное имя компа, проверку на авторизацию на компе, а потом прикрутил проверку пингом... Вдруг комп вообще выключен.
Может кому пригодиться...


Computer = InputBox("Имя компьютера")
If (Computer = "") Then
Wscript.Echo "Укажите имя компьютера"
Else

Sub PingPc(Pc)
Set objPing = GetObject("winmgmts:{impersonationLevel=impersonate}")._
ExecQuery("select * from Win32_PingStatus where address = '"_
& Pc & "'")
For Each objStatus In objPing
If IsNull(objStatus.StatusCode) or objStatus.StatusCode<>0 Then
wscript.echo "Не могу подключиться"
WScript.Quit
end if
next
End Sub

Sub UserPc(Pc)
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & Pc & "\root\cimv2")

Set colComputer = objWMIService.ExecQuery _
("Select * from Win32_ComputerSystem")
For Each objComputer in colComputer
If (objComputer.UserName <> "") Then
Wscript.Echo "Пользователь: "& vbCrLf & objComputer.UserName
Else
Wscript.Echo "Не авторизировано"
end if
Next
End Sub

Call PingPc(Computer)
Call UserPc(Computer)

end if


Строго не судите ) я не силен в написании скриптов vbs
Рейтинг: 10
(2)


* редактировал sx007 04:00 31 май 2013



Похожие записи в блоге:
  • Борьба с контактами - 09:34 2 ноя 2010
  • МегаДень - 15:43 2 дек 2010
  • Оказывается сегодня уже 2 января - 16:58 2 янв 2011


  • Этот блог сейчас читают: всего 0

    Просмотров: 1210 | Комментариев: нет |


    Напомнить пароль