faq обучение настройка
Текущее время: Ср июн 25, 2025 22:43

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 33 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Скрипт для ребута
СообщениеДобавлено: Чт апр 28, 2011 01:47 
Не в сети

Зарегистрирован: Чт апр 28, 2011 01:42
Сообщений: 4
Доброго времени суток ,
у меня провайдер рвет соединение когда включается торент ,примерно 1раз за час,
Может кто сталкивался или кто силен подскажет как сделать скрипт при обрыве интернета?
к примеру
скрипт пингует яндекс,как тока пинг оборвался стартует ребут ,есть ли возможность такое реализовать??


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Скрипт для ребута
СообщениеДобавлено: Чт апр 28, 2011 10:06 
Не в сети

Зарегистрирован: Ср окт 21, 2009 19:52
Сообщений: 237
Можно попробовать использовать такой код
Код:
 ; Компилятор - PureBasic 4.51.

ProgramFilename.s=ProgramFilename() ; Имя и путь к исполняемому файлу данной программы
ProgName.s=GetFilePart(ProgramFilename)
a = CreateSemaphore_(#Null,0,1,@ProgName) ; Если прога уже запущена, то завершаем работу этой копии программы.
If a<>0 And GetLastError_()=#ERROR_ALREADY_EXISTS
  MessageRequester(ProgName, "Программа уже запущена", #MB_OK|#MB_ICONWARNING)
  CloseHandle_(a)
  End
EndIf

InitNetwork()

Procedure.s SendModemData(Connect, Command.s)
  Protected Result.s="", Count=0, x
  Command=Command+Chr(13)+Chr(10)
  SendNetworkData(Connect, @Command, Len(Command))
  Repeat
    Delay(20)
    If NetworkClientEvent(Connect)=#PB_NetworkEvent_Data
      *mem=AllocateMemory(10000)
      If *mem
        ReceiveNetworkData(Connect,*mem,10000)
        In.s=PeekS(*mem)
        FreeMemory(*mem)
        Result=Result+In
      EndIf
    EndIf
    Count+1
  Until Count>=80
  ProcedureReturn Result
EndProcedure


Procedure RestartModem()
  Connect=OpenNetworkConnection("192.168.1.1", 23)
  If Connect
    Delay(100)
    SendModemData(Connect, "admin") ; Логин модема.
    Delay(1000)
    SendModemData(Connect, "admin") ; Пароль модема.
    Delay(1000)
    SendModemData(Connect, "reboot") ; Команда перезагрузки модема.
    Delay(4000)
    CloseNetworkConnection(Connect)
  EndIf
EndProcedure

Repeat
  Delay(30000) ; 30 секунд ожидания.
  x1=0 : x2=0
  Connect=OpenNetworkConnection("www.google.com", 80)
  If Connect
    x1=1
    CloseNetworkConnection(Connect)
  EndIf
  Delay(1000)
  Connect=OpenNetworkConnection("www.ya.ru", 80)
  If Connect
    x2=1
    CloseNetworkConnection(Connect)
  EndIf
 
  If x1=0 And x2=0
    RestartModem()
    For i=1 To 20
      Delay(10000) ; 200 секунд ожидания. Необходимо чтобы модем успел перезагрузиться.
    Next i
  EndIf
ForEver


В процедуре RestartModem() нужно указать IP адрес модема, логин и пароль модема.
Ниже задаются пингуемые адреса.
Сейчас это www.google.com и www.ya.ru.

Скомпилированная программа. http://depositfiles.com/files/ax5gm7qpn


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Скрипт для ребута
СообщениеДобавлено: Чт апр 28, 2011 20:15 
Не в сети

Зарегистрирован: Чт апр 28, 2011 01:42
Сообщений: 4
Большое Вам человеческое спасибо! и низкий поклон)) вы облегчили мои страдания за ночь приходилось по будильнику вставать раз 7 ...
Попробовал .работает.
Возможно ли добавить сюда еще и лог.что было видно статистику во сколько была перезагрузка и сколько ..
и что бы было видно окошко выполняемой программки(если такое возможно ,сам процесс)ее видно тока в диспетчере задач


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Скрипт для ребута
СообщениеДобавлено: Чт апр 28, 2011 23:56 
Не в сети

Зарегистрирован: Ср окт 21, 2009 19:52
Сообщений: 237
Chiko2005 писал(а):
Возможно ли добавить сюда еще и лог.что было видно статистику во сколько была перезагрузка и сколько ..
и что бы было видно окошко выполняемой программки(если такое возможно ,сам процесс)ее видно тока в диспетчере задач

Доработал программу.
Сама программа в месте с ее исходным текстом в архиве. http://depositfiles.com/files/97vz8xu24

После запуска, программа не создает окон, но ее значок появляется в трее.
Чтобы появилось окно, нужно или щелкнуть левой кнопкой мышки по значку в трее, либо правой кнопкой и выбрать соответствующий пункт в меню.
Лог перезагрузок модема отображается в окне программы и сохраняется в файле Reboot ADSL modem.log, находящемся в одной папке с программой.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Скрипт для ребута
СообщениеДобавлено: Сб апр 30, 2011 19:51 
Не в сети

Зарегистрирован: Чт апр 28, 2011 01:42
Сообщений: 4
Супер,за ночь связь оборвалась 7 раз,спасибо вам!!
попытался запустить на рабочем сервере ,прога не запустилась ,возможно ли сделать запуск на win server2003???


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Скрипт для ребута
СообщениеДобавлено: Сб апр 30, 2011 20:22 
Не в сети

Зарегистрирован: Ср окт 21, 2009 19:52
Сообщений: 237
Chiko2005 писал(а):
попытался запустить на рабочем сервере ,прога не запустилась ,возможно ли сделать запуск на win server2003???
При запуске появлялись ли сообщения об ошибках?
У меня нет данной операционной системы, поэтому проверить не могу.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Скрипт для ребута
СообщениеДобавлено: Сб апр 30, 2011 22:02 
Не в сети

Зарегистрирован: Чт апр 28, 2011 01:42
Сообщений: 4
выдает вот такое сообщение файл не поврежден но предназначен для другого типа компьютера


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Скрипт для ребута
СообщениеДобавлено: Сб апр 30, 2011 22:25 
Не в сети

Зарегистрирован: Ср окт 21, 2009 19:52
Сообщений: 237
Chiko2005 писал(а):
выдает вот такое сообщение файл не поврежден но предназначен для другого типа компьютера
Попробуйте в свойствах файла поставить совместимость с Windows XP или Windows 2000. Возможно поможет.
Мне не приходилось разрабатывать программы под Windows 2003 и поэтому сложно сказать почему появляется эта ошибка и как ее исправить.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Скрипт для ребута
СообщениеДобавлено: Пн май 30, 2011 18:35 
Не в сети

Зарегистрирован: Сб мар 22, 2008 23:35
Сообщений: 14
подскажите как добавить логин и пароль модема, чтото я не понял, где это прописывать?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Скрипт для ребута
СообщениеДобавлено: Пн май 30, 2011 20:42 
Не в сети

Зарегистрирован: Ср окт 21, 2009 19:52
Сообщений: 237
xxToaDxx писал(а):
подскажите как добавить логин и пароль модема, чтото я не понял, где это прописывать?

В комментариях кода все написано
Код:
    SendModemData(Connect, "admin") ; Логин модема.
    Delay(1000)
    SendModemData(Connect, "admin") ; Пароль модема.
    Delay(1000)
В место admin записывайте требуемые значения.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Скрипт для ребута
СообщениеДобавлено: Вт май 31, 2011 06:10 
Не в сети

Зарегистрирован: Сб мар 22, 2008 23:35
Сообщений: 14
та это я понял где прописывать именно логин и пароль, я не понял где находится вся эта писанина и как до нее добраться.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Скрипт для ребута
СообщениеДобавлено: Вт май 31, 2011 10:44 
Не в сети

Зарегистрирован: Ср окт 21, 2009 19:52
Сообщений: 237
xxToaDxx писал(а):
та это я понял где прописывать именно логин и пароль, я не понял где находится вся эта писанина и как до нее добраться.
Весь код программы находится во втором сообщении темы.
Его нужно скопировать в редактор среды разработки, изменить логин и пароль, а затем, создать исполняемый файл (EXE-программу).

Изображение


Если вы имели в виду, архив из 4 сообщения темы, то код находится в файле с расширением pb.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Скрипт для ребута
СообщениеДобавлено: Ср июн 01, 2011 21:12 
Не в сети

Зарегистрирован: Сб мар 22, 2008 23:35
Сообщений: 14
работает, спасибо :D


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Скрипт для ребута
СообщениеДобавлено: Ср июн 01, 2011 21:39 
Не в сети

Зарегистрирован: Пн дек 06, 2010 22:51
Сообщений: 35
для какого модема раюотяет сие чудо? на 2640 прокатит? можно ли изменить таймаут пинга до яндыха и гугла? спс за прогу
почитаем код

вопрос про таймаут оменяется


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Скрипт для ребута
СообщениеДобавлено: Чт июн 02, 2011 16:08 
Не в сети

Зарегистрирован: Сб мар 22, 2008 23:35
Сообщений: 14
Pro_ger сделай пожалуйста в программе кнопочку принудительной перезагрузки модема, чтобы когда нужно сменить IP не нужо было лезть черт знает куда и клацать кнопку включения модема.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 33 ]  На страницу 1, 2, 3  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 15


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB