|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Помогите дописать скрипт (пингует гугл и если не доступен ребутит модем) |
|
VBS/WSH/JS - Помогите дописать скрипт (пингует гугл и если не доступен ребутит модем)
|
Новый участник Сообщения: 5 |
Всем привет, помогите дописать скрипт:
On Error Resume Next strComputer = "." strTarget = "194.54.89.232" 'IP address or hostname Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set colPings = objWMIService.ExecQuery _ ("Select * From Win32_PingStatus where Address = '" & strTarget & "'") If Err = 0 Then Err.Clear For Each objPing in colPings 'избавиться от форича If Err = 0 Then Err.Clear If objPing.StatusCode = 0 Then ' если статус = 0, пустая строка - другое Else Set oShell = WScript.CreateObject("WScript.Shell") oShell.Run "telnet.exe 192.168.1.1" WScript.Sleep 5000 oShell.SendKeys "login" & chr(13) WScript.Sleep 2000 oShell.SendKeys "passworld" & chr(13) WScript.Sleep 1000 oShell.SendKeys "reboot" & chr(13) End If Else Err.Clear WScript.Echo "Unable to call Win32_PingStatus on " & strComputer & "." End If Next Else Err.Clear WScript.Echo "Unable to call Win32_PingStatus on " & strComputer & "." End If ПС. Пробывал команду logout но после ребута команда не действует потому как идет ребут модема, нужно в вбс закрыть активное окно но не знаю как СПС |
|
Отправлено: 12:18, 18-03-2011 |
Ветеран Сообщения: 3806
|
Профиль | Отправить PM | Цитировать можно попробовать работать с telnet более прогрессивным методом: http://sourceforge.net/projects/telscript/
|
Отправлено: 22:29, 19-03-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать Цитата Busla:
Прогрессивный метод меня как бы мало интересует мне окна нужно закрыть. В данной сылке инфы нужной не нашел. |
|
Последний раз редактировалось cRYSMAS, 21-03-2011 в 14:28. Отправлено: 09:51, 21-03-2011 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата cRYSMAS:
![]() |
|
Отправлено: 18:56, 21-03-2011 | #4 |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать гм, блин ну закрыть нужно окно,мне вот нашел но не работает такую строки вставил
Set objShellApp = CreateObject("Shell.Application") Set objShellWin = objShellApp.Windows For i=objShellWin.Count-1 To 0 Step -1 objShellWin.Item(i).Quit не закрывает окна почему не работает? |
|
Отправлено: 10:09, 23-03-2011 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Потому, что окно telnet.exe — это не окно Проводника, и не окно Internet Explorer'а. С чего бы ему закрываться по приведённому коду?
|
Отправлено: 11:53, 23-03-2011 | #6 |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать я понимаю что это совсем другое окно как закрыть телнет окно? после ребута команда logout не работает
так мб помог с до писание скрипта потому как я не знаю как правильно это сделать |
Отправлено: 14:26, 23-03-2011 | #7 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать «так мб» Вы воспользовались бы поиском или хотя бы фильтром по сочетанию «telnet». Вы бы тогда увидели, что для реальной работы предлагается использовать (помимо предложенной выше) ещё как минимум две утилиты, «PLink» и «TSE», и опробовали бы их. У меня, скажем, «PLink» не срабатывал, а «TSE» работал. У кого-то — с точностью до наоборот. Плюс ещё один возможный обходной путь.
Вы не хотите воспользоваться опытом людей, которые проходили этот путь до Вас? Ну, а мне рассказывать в очередной раз, почему: не является правильным подходом к решению данной проблемы, тоже не интересно, ибо, как я не раз убеждался — сии объяснения обычно бесполезны. |
Отправлено: 18:18, 23-03-2011 | #8 |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать блин спасибо конечно посмотрел 1 (послдняя сылка бита) и зачем мне сылка которая ребутит модем? я скриптом пользуюсь, нормально все работает. Если б я знал хорошо мать часть мне б и объяснять бы не пришлось ладно это все философия
![]() Set pExec = CreateObject("WScript.Shell") Set pExec = pShell.Exec("cmd /k telnet 192.168.1.1") WScript.Sleep 1000 pExec.SendKeys "login" & Chr(13), 10 WScript.Sleep 1000 pExec.SendKeys "pass" & Chr(13), 10 WScript.Sleep 1000 pExec.SendKeys "reboot" & chr(13) pExec.Terminate ПС. Гуглил по поводу закрытия окна/активного окна в вбс скриптах. |
Отправлено: 09:20, 24-03-2011 | #9 |
Новый участник Сообщения: 2
|
Профиль | Отправить PM | Цитировать Такой скрипт запускает окно телнета в свернутом виде, после перезагрузки если попытаться развернуть это окно - оно пропадает.
On Error Resume Next strComputer = "." strTarget = "google.com" 'IP. Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set colPings = objWMIService.ExecQuery ("Select * From Win32_PingStatus where Address = '" & strTarget & "'") If Err = 0 Then Err.Clear For Each objPing in colPings If Err = 0 Then Err.Clear If objPing.StatusCode = 0 Then Else set WshShell = WScript.CreateObject("WScript.Shell") WshShell.Run "telnet.exe 192.168.1.1",2 WScript.Sleep 1000 WshShell.SendKeys "admin{ENTER}" 'admin - login WScript.Sleep 1000 WshShell.SendKeys "admin{ENTER}" 'admin - password WScript.Sleep 1000 WshShell.SendKeys "reboot{ENTER}" WScript.Sleep 3000 WshShell.SendKeys "{ENTER}" End If Else Err.Clear WScript.Echo "Unable to call Win32_PingStatus on " & strComputer & "." End If Next Else Err.Clear WScript.Echo "Unable to call Win32_PingStatus on " & strComputer & "." End If |
Отправлено: 23:34, 25-06-2011 | #10 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Не работает WinWaitActive если скрипт запущен из Windows sheduler | Kubik | AutoIt | 0 | 11-02-2011 16:28 | |
.NET - Помогите дописать контрол | DaRiYs | Программирование и базы данных | 0 | 04-02-2011 23:17 | |
VBS/WSH/JS - [решено] Помогите дописать скрипт!!! | OSArev | Скриптовые языки администрирования Windows | 1 | 08-11-2010 21:50 | |
Route/Bridge - Как запретить доступ к некоторым сайтам , если модем настроен роутером | NICL | Сетевые технологии | 5 | 29-01-2010 11:54 | |
Помогите чайнику. Нужно дописать set clipper=f:80 | Андрей Штольн | Хочу все знать | 2 | 13-07-2007 23:12 |
|