Перейти к содержимому


Помогите изменить скрипт reboot.vbs


  • Закрытая тема Тема закрыта
Сообщений в теме: 7

#1 mux76

mux76

    Монстр общения

  • Сообщений 339
  • Торрентов 1
  • Город-

Отправлено 02 December 2010 - 16:52

Есть скрипт перезагрузки модема (ВТ совсем задолбал)

Цитата

Dim FSO 'Объект "Scripting.FileSystemObject"
Dim LogPath 'Путь к файлу лога этого скрипта
Set WshShell = CreateObject("WScript.Shell")
Set WshArg = WScript.Arguments
Set FSO = CreateObject("Scripting.FileSystemObject")
LogPath = WshShell.CurrentDirectory 'лог сохраняем в папку со скриптом

On Error Resume Next

strComputer = "."
strTarget = "ya.ru" 'IP адоес внешнего сервера при недоступности которого считаем, что интернета нету и перегружаем модем (можно поставить  google.com)
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" ' строка подключения к модему (10.10.10.1 - IP модема)
WScript.Sleep 1000
oShell.SendKeys "бла-бла-бла" & chr(13)  ' имя для входа на модем
WScript.Sleep 1000
oShell.SendKeys " бла-бла-бла " & chr(13) ' пароль для входа на модем
WScript.Sleep 1000
oShell.SendKeys "reboot" & chr(13) ' команда перезагрузки модема
'Здесь начинается формирование файла-лога данного скрипта, который сохраняется рядом с самим скриптом
Set LogFile = FSO.OpenTextFile(LogPath & "\" & "reboot.log", 8, True)
LogFile.WriteLine "***************************************"
LogFile.WriteLine "Запуск перезагрузки модема..."
LogFile.WriteLine "***************************************"
LogFile.WriteLine "Задача запущена в " & Time & " " & Date
LogFile.WriteLine
LogFile.WriteLine
LogFile.Close
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

Кто может помочь внести изменения

Цитата

Dim FSO 'Объект "Scripting.FileSystemObject"
Dim LogPath 'Путь к файлу лога этого скрипта
Set WshShell = CreateObject("WScript.Shell")
Set WshArg = WScript.Arguments
Set FSO = CreateObject("Scripting.FileSystemObject")
LogPath = WshShell.CurrentDirectory 'лог сохраняем в папку со скриптом

On Error Resume Next

strComputer = "."
strTarget = "ya.ru" 'IP адоес внешнего сервера при недоступности которого считаем, что интернета нету и перегружаем модем (можно поставить  google.com)
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" ' строка подключения к модему (10.10.10.1 - IP модема)
WScript.Sleep 1000
oShell.SendKeys "бла-бла-бла" & chr(13)  ' имя для входа на модем
WScript.Sleep 1000
oShell.SendKeys " бла-бла-бла " & chr(13) ' пароль для входа на модем
WScript.Sleep 1000
Иногда в этом месте не подрубается к модему и встает на месте, необходимо вставить команду закрыть окно с задержкой в 90 сек.
Изображение
*
*

Цитата

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
В конце необходимо вставить команду для закрытия “telnet.exe”
Изображение
Всем спасибО, даже кто прочитал, всем кто поможет +++++

#2 ZLOFENIX

ZLOFENIX

    Администратор

  • Сообщений 1711
  • Торрентов 4
  • Лицо руководства 2010

Отправлено 02 December 2010 - 16:59

нафигач на дельфях например, компонент готовый же телнет клиента

#3 mux76

mux76

    Монстр общения

  • Сообщений 339
  • Торрентов 1
  • Город-

Отправлено 02 December 2010 - 17:02

Просмотр сообщенияZLOFENIX (02 December 2010 - 16:59) писал:

нафигач на дельфях например, компонент готовый же телнет клиента
А поподРобней, если можЪ (ВТ сАвсем за*бал)

#4 ZLOFENIX

ZLOFENIX

    Администратор

  • Сообщений 1711
  • Торрентов 4
  • Лицо руководства 2010

Отправлено 02 December 2010 - 17:11

ping http://www.delphisou...e_ping_app.html
telnet http://www.google.ru...l=&oq=&gs_rfai=
както так
ну или другой телнет компонент, их полно в сети

когда-то давно, когда серв еще стоял на моем адсл, у меня был скрипт для линя который ребутил модем

вот тебе сферический случай, все просто ибо клиентсокет http://www.delphisou...read.php?t=7156

#5 ZLOFENIX

ZLOFENIX

    Администратор

  • Сообщений 1711
  • Торрентов 4
  • Лицо руководства 2010

Отправлено 02 December 2010 - 17:18

тащемта накидал почти прогу...

#6 mux76

mux76

    Монстр общения

  • Сообщений 339
  • Торрентов 1
  • Город-

Отправлено 02 December 2010 - 17:29

Просмотр сообщенияZLOFENIX (02 December 2010 - 17:18) писал:

тащемта накидал почти прогу...
ZLO Спасибо, но я НУБ в теме, на пальЦах можЪ, куды чё вставить, и как запустить!  (ВТ сАвсем за*бал)

#7 ZLOFENIX

ZLOFENIX

    Администратор

  • Сообщений 1711
  • Торрентов 4
  • Лицо руководства 2010

Отправлено 02 December 2010 - 17:35

ну вот както так, посмотри@поправь что не устраивает, интервал 1го таймера не советую ставить меньше, а то сработает пока модем перегружается и пойдет по кругу
и забыл в
procedure TForm1.pingerError(Sender: TObject; Socket: TCustomWinSocket;
  ErrorEvent: TErrorEvent; var ErrorCode: Integer);

перед end; добавь ErrorCode:=0;

на всякий случай также рекомендую сделать событие на телнет тоже на ошибку, там только ErrorCode:=0;

reboot.rar

#8 mux76

mux76

    Монстр общения

  • Сообщений 339
  • Торрентов 1
  • Город-

Отправлено 02 December 2010 - 17:38

Просмотр сообщенияZLOFENIX (02 December 2010 - 17:11) писал:



вот тебе сферический случай, все просто ибо клиентсокет http://www.delphisou...read.php?t=7156
[cens] вотЪ я нуб  :(

Сообщение отредактировал Reb0rn: 02 December 2010 - 17:59





Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных