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

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   [решено] Создание VPN подключения с помощью Autoit, не прописывает имя сервера. (http://forum.oszone.net/showthread.php?t=137140)

Vic_tory 08-04-2009 17:14 1088063

Создание VPN подключения с помощью Autoit, не прописывает имя сервера.
 
В архивах форума нашла скрипт от «Котяры» создание диалап подключения, переделала под впн. На моем компьютере скрипт отрабатывает, .exe файл тоже (стоит Win XP SP2 Pro ). На других компьютерах пользователей (таже операционка )установка доходит до введения имени компьютера и останавливается.

Run("rundll32.exe netshell.dll,StartNCW")
WinWaitActive ('Мастер новых подключений','Мастер новых подключений')
Send('{Enter}')
Sleep ('500')
WinWaitActive ('Мастер новых подключений','Подключить к рабочей сети (используя удаленный доступ или VPN), чтобы можно было работать из дома, удаленного офиса или другого места.')
ControlClick ('Мастер новых подключений','Подключить к рабочей сети (используя удаленный доступ или VPN), чтобы можно было работать из дома, удаленного офиса или другого места.','Button2')
Sleep ('500')
Send('{Enter}')
WinWaitActive ('Мастер новых подключений','Создать подключение')
ControlClick ('Мастер новых подключений','Создать подключение','Button2')
Sleep ('500')
Send('{Enter}')
WinWaitActive ('Мастер новых подключений','Организация')
ControlSetText ( 'Мастер новых подключений', '', 'Edit1', 'Name' )
Sleep ('500')
Send('{Enter}')
WinWaitActive ('Мастер новых подключений','Выберите, надо ли автоматически подключаться к Интернету или иной общей сети перед установлением виртуального подключения.')
ControlClick ( 'Мастер новых подключений','Выберите, надо ли автоматически подключаться к Интернету или иной общей сети перед установлением виртуального подключения.','Button1')
Sleep ('500')
Send('{Enter}')
WinWaitActive ('Мастер новых подключений','Имя компьютера или IP-адрес (например, microsoft.com или 157.54.0.1):')
ControlSetText ( 'Мастер новых подключений', '', 'Edit1', 'Host' )
Sleep ('500')
Send('{Enter}')
ControlCommand ( 'Мастер новых подключений', '', 'Button8', 'Check', '' )
ControlCommand ( 'Мастер новых подключений', '', 'Button1', 'Check', '' )
Sleep ('500')
Send('{Enter}')
WinWaitActive ('Мастер новых подключений','Завершение работы мастера новых подключений')
ControlCommand ( 'Мастер новых подключений', '', 'Button10', 'UnCheck', '' )
Send('{Enter}')
Exit


Брала скрип пример из книги Алексея Барабанова «Автоматизация MS Windows или AutoIt, как мечта эникейщика.» тоже самое :о(, у меня работает, на других компах доходит до прописывания имени компьютера и останавливается, не пойму в чем дело! Помогите плиииз!

amel27 09-04-2009 11:29 1088712

Цитата:

Цитата Vic_tory
не пойму в чем дело »

очевидно ждет окна, которого нету:
Код:

WinWaitActive ('Мастер новых подключений','Выберите, надо ли автоматически подключаться к Интернету или иной общей сети перед установлением виртуального подключения.')
как вариант - поставить таймаут ожидания в WinWaitActive() - третий параметр (в секундах), по истечении периода ожидания если окно не появится скрипт продолжит работу... для просмотра в трее строки, на которой "висит" скрипт используйте команду:
Код:

Opt("TrayIconDebug", 1)

Vic_tory 09-04-2009 12:16 1088762

Спасибо за ответ, но дело в том что на компьютере на котором пишется скрипт все работает. На других компьютерах с той же ОС останавливается на активном окне 'Мастер новых подключений','Имя компьютера или IP-адрес (например, microsoft.com или 157.54.0.1):' и мигающим курсором в окне ввода имени сервера.

Если поставить таймаут то скрипт продолжает работу но в параметрах сервера остается пусто.

proxy 09-04-2009 12:46 1088786

Ипользуйте утилиту: Au3Info.exe (находится в корне папки AutoIt)
и посмотрите окно на котором останавливается выполнение скрипта.

Окно должно иметь заголовок: Мастер новых подключений
В тексте окна должен присутсвовать текст (точь в точь): Имя компьютера или IP-адрес (например, microsoft.com или 157.54.0.1):

Поле ввода ip адреса должно иметь ClassnameNN: Edit1

amel27 09-04-2009 13:38 1088820

Vic_tory, попробуйте так:
Код:

Run("rundll32.exe netshell.dll,StartNCW")

$TITLE = "Мастер новых подключений"
While WinWaitActive($TITLE, "", 3)
    $TEXT = WinGetText("")
    Select
        Case
StringInStr($TEXT,'Этот мастер поможет:')
        Case StringInStr($TEXT,'Подключить к рабочей сети (используя удаленный доступ или VPN), чтобы можно было работать из дома, удаленного офиса или другого места.')
            ControlClick ("","","Button2")
        Case StringInStr($TEXT,'Создать подключение')
            ControlClick ("","","Button2")
        Case StringInStr($TEXT,'Организация')
            ControlSetText("","","Edit1","Name")
        Case StringInStr($TEXT,'Выберите, надо ли автоматически подключаться к Интернету или иной общей сети перед установлением виртуального подключения.')
            ControlClick ("","","Button1")
        Case StringInStr($TEXT,'Имя компьютера или IP-адрес (например, microsoft.com или 157.54.0.1):')
            ControlSetText("","","Edit1","Host")
        Case StringInStr($TEXT,'Создать это подключение:')
            ControlCommand("","","Button1","Check","")
        Case StringInStr($TEXT,'Завершение работы мастера новых подключений')
            ControlCommand("","","Button10","UnCheck","")
        Case Else
            Sleep ('100')
            ContinueLoop
    EndSelect

    Sleep ('500')
    Send('{Enter}')
WEnd


Vic_tory 09-04-2009 13:48 1088824

Цитата:

Цитата proxy
Ипользуйте утилиту: Au3Info.exe (находится в корне папки AutoIt)
и посмотрите окно на котором останавливается выполнение скрипта.
Окно должно иметь заголовок: Мастер новых подключений
В тексте окна должен присутсвовать текст (точь в точь): Имя компьютера или IP-адрес (например, microsoft.com или 157.54.0.1): »

Проверила окно, заголовок точно такойже
в начеле перед текстом окна стоит знак "&" поставила, не помогло

Цитата:

Цитата proxy
Поле ввода ip адреса должно иметь ClassnameNN: Edit1 »

так и есть

Vic_tory 09-04-2009 14:05 1088837

Спасибо amel27 ваш скрипт работает :о)

только я так и не поняла почему не работает мой :о( что было не так?

proxy 09-04-2009 14:52 1088889

Код:

#region: - Options
    Opt('MustDeclareVars',      1)
    Opt('TrayIconDebug',        1)
    Opt('TrayIconHide',        0)
    Opt('WinDetectHiddenText',  1)
#endregion

HotKeySet('{ESC}', '_Pro_Exit')

Local  $iPid = Run('rundll32.exe netshell.dll,StartNCW')
Local  $sRasPhoneFilePath = @AppDataCommonDir & '\Microsoft\Network\Connections\Pbk\rasphone.pbk'
Local  $sRasPhoneFileText = FileRead($sRasPhoneFilePath)
Local  $iHwd, $sText
Local  $sTitle = 'Мастер новых подключений'
Local  $sConnectName = 'Connect name - Имя подключения'
Local  $sConnectIP = '150.100.0.12'
Local  $fAddShortcutOnDesktop = 1

While 1
    $iHwd = _ProcessGetWindow($iPid)
    If BitAnd(WinGetState($iHwd), 2) Then ExitLoop
WEnd

While
1
    $sText = WinGetText($iHwd)

    Select
        Case
StringInStr($sText,'Этот мастер поможет:')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:2]')

        Case StringInStr($sText,'Подключить к рабочей сети (используя удаленный доступ или VPN), чтобы можно было работать из дома, удаленного офиса или другого места.')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:2]')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:6]')

        Case StringInStr($sText,'&Подключение к виртуальной частной сети')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:2]')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:8]')

        Case StringInStr($sText,'Введите в следующем поле имя для этого подключения.')
            While 1
                If StringInStr($sRasPhoneFileText, '[' & _StringToUTF($sConnectName) & ']') OR $sConnectName == '' Then
                    $sConnectName = InputBox('Внимание', 'Подключение с иминем "' & $sConnectName & '" уже существует' & @CRLF & @CRLF & _
                                            'Введите другое название для подключения:', '', '', 300, 150, -1, -1)
                Else
                    ExitLoop
                EndIf
            WEnd
            ControlSetText($iHwd, '', '[CLASS:Edit; INSTANCE:1]', $sConnectName)
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:8]')

        Case StringInStr($sText,'Выберите, надо ли автоматически подключаться к Интернету или иной общей сети перед установлением виртуального подключения.')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:1]')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:10]')

        Case StringInStr($sText,'Введите имя узла или IP-адрес компьютера, к  которому осуществляется подключение.')
            ControlSetText($iHwd, '', '[CLASS:Edit; INSTANCE:1]', $sConnectIP)
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:10]')

        Case StringInStr($sText,'Успешно завершено создание следующего подключения:')
            If $fAddShortcutOnDesktop Then ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:1]')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:21]')
            ExitLoop
    EndSelect
    Sleep('10')
WEnd

Func _Pro_Exit()
    Exit
EndFunc

Func _ProcessGetWindow($iPID, $iRet=1)
    Local $aWinList = WinList()
    Local $aRet[2]

    If IsString($iPID) Then $iPID = ProcessExists($iPID)

    For $i = 1 To UBound($aWinList)-1
        If WinGetProcess($aWinList[$i][1]) = $iPID Then
            $aRet[0] = $aWinList[$i][0] ;Title
            $aRet[1] = $aWinList[$i][1] ;WinHandle

            If $iRet = 0 Then Return $aRet[0]
            If $iRet = 1 Then Return $aRet[1]

            Return $aRet
        EndIf
    Next

    Return SetError(1, 0, $aRet)
EndFunc

Func _StringToUTF($String)
    Local $sResult = "", $iCode
    Local $VarUTFArr = StringSplit($String, "")

    For $i = 1 To $VarUTFArr[0]
        $iCode = Asc($VarUTFArr[$i])

        Select
            Case $iCode >= 192 And $iCode <= 239
                $VarUTFArr[$i] = Chr(208) & Chr($iCode - 48)
            Case $iCode >= 240 And $iCode <= 255
                $VarUTFArr[$i] = Chr(209) & Chr($iCode - 112)
            Case $iCode = 168
                $VarUTFArr[$i] = Chr(208) & Chr(129)
            Case $iCode = 184
                $VarUTFArr[$i] = Chr(209) & Chr(145)
            Case Else
                $VarUTFArr[$i] = Chr($iCode)
        EndSelect

        $sResult &= $VarUTFArr[$i]
    Next

    Return $sResult
EndFunc

+ еще немного и можно сделать для работы в скрытом виде...

Vic_tory 09-04-2009 16:07 1088968

Большое спасибо всем за ответы, скрипт работает.

но я так и не уяснила себе в чем было дело, хотелось бы знать, что бы не делать ошибок в будущем.

amel27 10-04-2009 10:13 1089694

Vic_tory, поймите правильно - иногда проще и быстрее переписать, чем искать ошибку :)
обсуждалось неоднократно - посмотрите к примеру ТУТ, ТУТ и ТУТ

Vic_tory 10-04-2009 10:36 1089718

Спасибо, посмотрю :)

o_romka 26-01-2010 18:33 1330558

Заменил для себя в вашем скрипте данные. Все работает, СПАСИБО!!!

Хотел бы просить у Вас помощи, как сделать чтобы создаваемый ярлык автоматом попадал на стол. (Нужно установить галочку в конце - Создать Ярлык и копировать на рабочий стол).
И как в созданном ярлыке вернее в его свойствах в закладке Безопасность убрать галочку Требуется шифрование данных (Иначе отключается))

Заранее спасибо.

o_romka 27-01-2010 11:55 1331233

С созданием ярлыка на рабочий стол разобрался.


Помогите мне плиззз убрать галочку _ Требуется шифрование данных в созданном ярлыке в его свойствах.

o_romka 18-02-2010 17:02 1350392

эх... неужели это не возможно сделать????

penguen 11-03-2010 16:17 1366245

Цитата:

Цитата o_romka
Заменил для себя в вашем скрипте данные. Все работает, СПАСИБО!!!
Хотел бы просить у Вас помощи, как сделать чтобы создаваемый ярлык автоматом попадал на стол. (Нужно установить галочку в конце - Создать Ярлык и копировать на рабочий стол).
И как в созданном ярлыке вернее в его свойствах в закладке Безопасность убрать галочку Требуется шифрование данных (Иначе отключается))
Заранее спасибо. »

Можете рассказать как сделали, чтобы ярлык создавался на раб. столе?

o_romka 12-03-2010 07:47 1366688

Код:

#region: - Options
    Opt('MustDeclareVars',      0)
    Opt('TrayIconDebug',        0)
    Opt('TrayIconHide',        0)
    Opt('WinDetectHiddenText',  0)
#endregion

HotKeySet('{ESC}', '_Pro_Exit')

Local  $iPid = Run('rundll32.exe netshell.dll,StartNCW')
Local  $sRasPhoneFilePath = @AppDataCommonDir & '\Microsoft\Network\Connections\Pbk\rasphone.pbk'
Local  $sRasPhoneFileText = FileRead($sRasPhoneFilePath)
Local  $iHwd, $sText
Local  $sTitle = 'Мастер новых подключений'
Local  $sConnectName = 'HOME WORLD'
Local  $sConnectIP = '10.10.10.10'
Local  $fAddShortcutOnDesktop = 1

While 1
    $iHwd = _ProcessGetWindow($iPid)
    If BitAnd(WinGetState($iHwd), 2) Then ExitLoop
WEnd

While 1
    $sText = WinGetText($iHwd)

    Select
        Case StringInStr($sText,'Этот мастер поможет:')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:2]')

        Case StringInStr($sText,'Подключить к рабочей сети (используя удаленный доступ или VPN), чтобы можно было работать из дома, удаленного офиса или другого места.')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:2]')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:6]')

        Case StringInStr($sText,'&Подключение к виртуальной частной сети')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:2]')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:8]')

        Case StringInStr($sText,'Введите в следующем поле имя для этого подключения.')
            While 1
                If StringInStr($sRasPhoneFileText, '[' & _StringToUTF($sConnectName) & ']') OR $sConnectName == '' Then
                    $sConnectName = InputBox('Внимание', 'Подключение с иминем "' & $sConnectName & '" уже существует' & @CRLF & @CRLF & _
                                            'Введите другое название для подключения:', '', '', 300, 150, -1, -1)
                Else
                    ExitLoop
                EndIf
            WEnd
            ControlSetText($iHwd, '', '[CLASS:Edit; INSTANCE:1]', $sConnectName)
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:8]')

        Case StringInStr($sText,'Выберите, надо ли автоматически подключаться к Интернету или иной общей сети перед установлением виртуального подключения.')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:1]')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:10]')

        Case StringInStr($sText,'Введите имя узла или IP-адрес компьютера, к  которому осуществляется подключение.')
            ControlSetText($iHwd, '', '[CLASS:Edit; INSTANCE:1]', $sConnectIP)
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:10]')

        Case StringInStr($sText,'Успешно завершено создание следующего подключения:')
            If $fAddShortcutOnDesktop Then ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:1]')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:21]')
            ExitLoop
    EndSelect
    Sleep('10')
WEnd

Func _Pro_Exit()
    Exit
EndFunc

Func _ProcessGetWindow($iPID, $iRet=1)
    Local $aWinList = WinList()
    Local $aRet[2]

    If IsString($iPID) Then $iPID = ProcessExists($iPID)

    For $i = 1 To UBound($aWinList)-1
        If WinGetProcess($aWinList[$i][1]) = $iPID Then
            $aRet[0] = $aWinList[$i][0] ;Title
            $aRet[1] = $aWinList[$i][1] ;WinHandle

            If $iRet = 0 Then Return $aRet[0]
            If $iRet = 1 Then Return $aRet[1]

            Return $aRet
        EndIf
    Next

    Return SetError(1, 0, $aRet)
EndFunc

Func _StringToUTF($String)
    Local $sResult = "", $iCode
    Local $VarUTFArr = StringSplit($String, "")

    For $i = 1 To $VarUTFArr[0]
        $iCode = Asc($VarUTFArr[$i])

        Select
            Case $iCode >= 192 And $iCode <= 239
                $VarUTFArr[$i] = Chr(208) & Chr($iCode - 48)
            Case $iCode >= 240 And $iCode <= 255
                $VarUTFArr[$i] = Chr(209) & Chr($iCode - 112)
            Case $iCode = 168
                $VarUTFArr[$i] = Chr(208) & Chr(129)
            Case $iCode = 184
                $VarUTFArr[$i] = Chr(209) & Chr(145)
            Case Else
                $VarUTFArr[$i] = Chr($iCode)
        EndSelect

        $sResult &= $VarUTFArr[$i]
    Next

    Return $sResult
EndFunc


Уменя все получилось именно так, но не как не могу сделать чтобы в свойствах соединения убиралась галочка шифрования!!!! А без нее этот код не сильно выручает!!!! Если кто знает помагите .

o_romka 28-10-2010 17:22 1529610

Вот окончательный Код необходимый мне:

Код:

#region: - Options
    Opt('MustDeclareVars',      0)
    Opt('TrayIconDebug',        0)
    Opt('TrayIconHide',        0)
    Opt('WinDetectHiddenText',  0)
#endregion

HotKeySet('{ESC}', '_Pro_Exit')

Local  $iPid = Run('rundll32.exe netshell.dll,StartNCW')
Local  $sRasPhoneFilePath = @AppDataCommonDir & '\Microsoft\Network\Connections\Pbk\rasphone.pbk'
Local  $sRasPhoneFileText = FileRead($sRasPhoneFilePath)
Local  $iHwd, $sText
Local  $sTitle = 'Мастер новых подключений'
Local  $sConnectName = 'HOME WORLD'
Local  $sConnectIP = '10.10.10.10'
Local  $fAddShortcutOnDesktop = 1

While 1
    $iHwd = _ProcessGetWindow($iPid)
    If BitAnd(WinGetState($iHwd), 2) Then ExitLoop
WEnd

While 1
    $sText = WinGetText($iHwd)

    Select
        Case StringInStr($sText,'Этот мастер поможет:')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:2]')

        Case StringInStr($sText,'Подключить к рабочей сети (используя удаленный доступ или VPN), чтобы можно было работать из дома, удаленного офиса или другого места.')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:2]')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:6]')

        Case StringInStr($sText,'&Подключение к виртуальной частной сети')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:2]')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:8]')

        Case StringInStr($sText,'Введите в следующем поле имя для этого подключения.')
            While 1
                If StringInStr($sRasPhoneFileText, '[' & _StringToUTF($sConnectName) & ']') OR $sConnectName == '' Then
                    $sConnectName = InputBox('Внимание', 'Подключение с иминем "' & $sConnectName & '" уже существует' & @CRLF & @CRLF & _
                                            'Введите другое название для подключения:', '', '', 300, 150, -1, -1)
                Else
                    ExitLoop
                EndIf
            WEnd
            ControlSetText($iHwd, '', '[CLASS:Edit; INSTANCE:1]', $sConnectName)
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:8]')

        Case StringInStr($sText,'Выберите, надо ли автоматически подключаться к Интернету или иной общей сети перед установлением виртуального подключения.')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:1]')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:10]')

        Case StringInStr($sText,'Введите имя узла или IP-адрес компьютера, к  которому осуществляется подключение.')
            ControlSetText($iHwd, '', '[CLASS:Edit; INSTANCE:1]', $sConnectIP)
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:10]')

        Case StringInStr($sText,'Успешно завершено создание следующего подключения:')
            If $fAddShortcutOnDesktop Then ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:1]')
            ControlClick($iHwd, '', '[CLASS:Button; INSTANCE:21]')
            ExitLoop
    EndSelect
    Sleep('10')
WEnd

Func _Pro_Exit()
    Exit
EndFunc

Func _ProcessGetWindow($iPID, $iRet=1)
    Local $aWinList = WinList()
    Local $aRet[2]

    If IsString($iPID) Then $iPID = ProcessExists($iPID)

    For $i = 1 To UBound($aWinList)-1
        If WinGetProcess($aWinList[$i][1]) = $iPID Then
            $aRet[0] = $aWinList[$i][0] ;Title
            $aRet[1] = $aWinList[$i][1] ;WinHandle

            If $iRet = 0 Then Return $aRet[0]
            If $iRet = 1 Then Return $aRet[1]

            Return $aRet
        EndIf
    Next

    Return SetError(1, 0, $aRet)
EndFunc

Func _StringToUTF($String)
    Local $sResult = "", $iCode
    Local $VarUTFArr = StringSplit($String, "")

    For $i = 1 To $VarUTFArr[0]
        $iCode = Asc($VarUTFArr[$i])

        Select
            Case $iCode >= 192 And $iCode <= 239
                $VarUTFArr[$i] = Chr(208) & Chr($iCode - 48)
            Case $iCode >= 240 And $iCode <= 255
                $VarUTFArr[$i] = Chr(209) & Chr($iCode - 112)
            Case $iCode = 168
                $VarUTFArr[$i] = Chr(208) & Chr(129)
            Case $iCode = 184
                $VarUTFArr[$i] = Chr(209) & Chr(145)
            Case Else
                $VarUTFArr[$i] = Chr($iCode)
        EndSelect

        $sResult &= $VarUTFArr[$i]
    Next

    Return $sResult
EndFunc
$sNameConnect = "HOME WORLD"
$speed = 500
ShellExecute("rasphone.exe", "", @SystemDir)
WinWaitActive("Сетевые подключения")
ControlClick("Сетевые подключения", "", "[CLASS:Button; INSTANCE:4]")
WinWaitActive($sNameConnect & " Свойства")
Sleep($speed)
Send("^{TAB}")
Sleep($speed)
Send("^{TAB}")
Sleep($speed)
ControlClick($sNameConnect & " Свойства", "", "[CLASS:Button; INSTANCE:5]")
Sleep($speed)
Send("{ENTER}")
 WinWaitActive("Сетевые подключения")
ControlClick("Сетевые подключения", "", "[CLASS:Button; INSTANCE:2]")
Exit

ТЕПЕРЬ ВОПРОС КАК ТО ЖЕ САМОЕ СДЕЛАТЬ ПОД WINDOWS 7

tigrenokmosya 13-03-2011 01:35 1633569

Интересно, а в данной теме обсуждается только создание VPN с помощью Autoit?
Есть же более простые варианты, например все это дело реализовать с помощью Delphi, что я и сделал.
Много времени потратил на форумах, и наконец, пришел к тому, что пришлось создать проект самому, которым сейчас успешно пользуются многие.
Если хотите, то можете посмотреть на сайте http://tigrenokmosya.narod.ru

Delirium 13-03-2011 14:19 1633826

tigrenokmosya, вместо рекламы своей страницы лучше бы опубликовал свою программу на soft.oszone.net. Так её увидят гораздо больше людей.

o_romka 14-03-2011 08:00 1634339

Его программа работает и на его сайте есть всё что нужно в том числе и исходники с описанием. Так что это даже не реклама, а помощь.

Delirium 14-03-2011 09:12 1634387

o_romka, а я и не говорил, что он что то плохое сделал, я лишь порекомендовал более быстрый способ для продвижения своей утилиты.


Время: 05:36.

Время: 05:36.
© OSzone.net 2001-