Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Написание скриптов (http://forum.oszone.net/showthread.php?t=122430)

zhecka 09-11-2008 16:49 947828

Написание скриптов
 
Всем привет!

Народ, у меня такая ситуация... Периодически разрывается инет-соединение через PPPoE... Переподключение не срабатывает...

Звонил в тех.помощь, сказали что у них стоит лимит 3.2 гб за одно соединение (и это на моем анлиме))). Если сверх лимита - разъеденяет. Посоветовали поставить переподключение, которое у меня так стоит, но, почему-то не срабаывает.

Мне посоветовали воспользовать планировщиком nnCron и написать для него скрипт, чтобы прога пинговала провайдера и, если отсутствует соединения - переподключала его.

Но проблема в том, что я никогда не писал эти скрипты... не знаю с чего начинать и шо делать...

Помогите, пожалуйста, написать скрипт... ИЛИ посоветуйте как можно обойти данную ппроблему (разрыв инет-соединения)......

Благодарю за помощь!

pva 09-11-2008 19:46 947966

была такая тема, автоподключение PPPoE. Самое разумное помоему
Код:

C:\Documents and Settings\Andrey>rasdial /?
Вызов:
        rasdial элемент [пользователь [пароль|*]] [/DOMAIN:домен]
                [/PHONE:номерТелефона] [/CALLBACK:ответныйНомер]
                [/PHONEBOOK:файлАдреснойКниги] [/PREFIXSUFFIX]

        rasdial [элемент] /DISCONNECT

        rasdial

Команда успешно завершена.

пример:
rasdial "тариф безлимитный" 1238737829 4327438241
тариф безлимитный - так должно называться твоё соединение

Но у меня почему-то не всегда срабатывало. В обсуждении темы ещё варианты есть, исчи

amel27 10-11-2008 07:55 948269

Цитата:

Цитата zhecka
поставить переподключение, которое у меня так стоит, но, почему-то не срабаывает »

помнится, для работы автоподключения нужно:

- в параметрах подключения сбросить галки с "Запрашивать имя и пароль", "Запрашивать номер телефона", "Отображать ход подключения";
- в IE Сервис -->Свойства --> подключения выставить PPPoE соединением по умолчанию;
- там же: включить "Всегда использовать принятое по умолчанию подключение"
- там же: в "настройке" подключения пробить имя/пароль;

D_Master 10-11-2008 09:50 948302

Цитата:

Цитата zhecka
переподключение, которое у меня так стоит, но, почему-то не срабаывает. »

Аналогичная проблема - периодически (особенно ночью) пропадает подключение с Инетом. В настройках модема (D-Link 2500U) тип подключения выставлен как Bridging. Точнее, не пропадает, а отключается (или перезагружается) модем. Т.е., лампочка "DSL" перестаёт гореть, хотя в трее видно, что подключение активно.
Так же, при первой попытке сконектить с инетом вылетает окошко "Подключение через минипорт WAN (PPPoE)". Пока не нажмёшь "Отмена" и не запустишь подключение снова, с инетом не соединяет. Как такое исправить пока не придумал.

По скриптам - возникла идея реализовать на AutoIt'e, но, являясь новичком в этом деле, не могу понять нескольких вещей:
1. Как запустить сам диалог подключения?
2. Как пропинговать сайт?
Примерно накалякал :) что-то типа такого:
Код:

winwait("Подключение: SIB", "С&охранять имя пользователя и пароль")
WinActivate("Подключение: SIB", "С&охранять имя пользователя и пароль")
ControlClick("Подключение: SIB", "С&охранять имя пользователя и пароль", "Button4")
if WinExists("Установка связи с SIB...", "Подключение через Минипорт WAN (PPPoE)...") Then
        WinActivate("Установка связи с SIB...", "Подключение через Минипорт WAN (PPPoE)...")
        controlclick("Установка связи с SIB...", "Подключение через Минипорт WAN (PPPoE)...", "Button1")
        Exit
EndIf
Exit


amel27 10-11-2008 12:19 948451

D_Master
Цитата:

Цитата D_Master
Как запустить сам диалог подключения? »

Код:

_NetConnection_ExeVerb("ADSL", "&Подключить")
If @error Then MsgBox(16, "Ошибка", "Ошибка в имени подключения или команды.")

Sleep(10000)

; команды для локализованной XP:
;
; &Подключить
; Сос&тояние
; &Сделать подключением по умолчанию
; Создать &копию
; Создать &ярлык
; &Удалить
; &Переименовать
; Сво&йства


Func _NetConnection_ExeVerb($sConnectionName, $sVerbDisable)
    Local $sFolderName = "Сетевые подключения"

    Local $oNetConnections, $oConnection
    Local $oShellApp = ObjCreate("Shell.Application")
    Local $oControlPanel = $oShellApp.Namespace(3)
    For $oFolderItem In $oControlPanel.Items
        If $oFolderItem.Name = $sFolderName Then
            $oNetConnections = $oFolderItem.GetFolder
            ExitLoop
        EndIf
    Next
    If Not
(IsObj($oNetConnections)) Then Return SetError(1, 0, False)
    For $oFolderitem In $oNetConnections.Items
        If StringInStr($oFolderitem.Name, $sConnectionName) Then
            $oConnection = $oFolderitem
            ExitLoop
        EndIf
    Next
    If Not
(IsObj($oConnection)) Then Return SetError(2, 0, False)
            Local $oVerbs = $oConnection.Verbs
            For $oVerb In $oVerbs
                ConsoleWrite($oVerb.Name &@CRLF)
            Next
    $oConnection.InvokeVerb($sVerbDisable)
EndFunc

Цитата:

Цитата D_Master
Как пропинговать сайт? »

смотри в справке функцию Ping() ;)

З.Ы. вообще то это оффтоп и я бы делал через CMAK :)


Время: 06:33.

Время: 06:33.
© OSzone.net 2001-