Здравствуйте.
Использую AutoIt: v.3.3.8.1
Хочу объединить несколько функций. Если по отдельности, т.е. только в таком виде:
То все работает как надо. Но если я включаю эту проверку в свой скрипт:
То работает не как надо.
Подскажите как правильно?
Использую AutoIt: v.3.3.8.1
Хочу объединить несколько функций. Если по отдельности, т.е. только в таком виде:
Код:
#include <WinAPIEx.au3>
$sHost = 'www.google.ru'
$iTime = 4000
$iN = 4
If _Ping_Number($sHost, $iTime, $iN) = @error Then
TrayTip ( "Проверка на наличие соединения с интернет", "Соединение с интернет не обнаружено, завершаю работу.", 3 , 1)
MsgBox(16+262144, 'Error', "Соединение с интернет отсутствует!")
Exit
Else
TrayTip ( "Этап инициализации.", "Соединение с интернет обнаружено." & @LF & "Продолжаю работу.", 3 , 1)
Sleep(5000)
EndIf
Exit
if _WinAPI_IsNetworkAlive() = @error Then
TrayTip ( "Проверка на наличие соединения с интернет", "Соединение с интернет не обнаружено, завершаю работу.", 3 , 1)
MsgBox(16+262144, 'Error', "Соединение с интернет отсутствует!")
Exit
Else
TrayTip ( "Этап инициализации.", "Соединение с интернет обнаружено." & @LF & "Продолжаю работу.", 3 , 1)
Sleep(5000)
EndIf
Exit
Func _Ping_Number($sHostName, $iTimeOut = 8000, $iNumber = 4)
Local $iPing
For $i = 1 To $iNumber
$iPing = Ping($sHostName, $iTimeOut)
If Not @error Then ExitLoop
Next
If @error Then
Return SetError(@error)
Else
Return SetError(0, $iPing, 1)
EndIf
EndFunc
То все работает как надо. Но если я включаю эту проверку в свой скрипт:
Код:
#include <WinAPIEx.au3>
$sHost = 'www.google.ru'
$iTime = 4000
$iN = 4
;Проверка соединения + Отрисовка чекбоксов
For $i = 1 To $aCheckbox[0]
GUISetState(@SW_HIDE)
_Ping_Number($sHost, $iTime, $iN)
if @error Then
TrayTip ( "Проверка на наличие соединения с интернет", "Соединение с интернет не обнаружено, завершаю работу.", 3 , 1)
MsgBox(16+262144, 'Error', "Соединение с интернет отсутствует!")
Else
TrayTip ( "Этап инициализации.", "Соединение с интернет обнаружено." & @LF & "Продолжаю работу.", 3 , 1)
EndIf
_WinAPI_IsNetworkAlive()
if @error Then
TrayTip ( "Проверка на наличие соединения с интернет", "Соединение с интернет не обнаружено, завершаю работу.", 3 , 1)
MsgBox(16+262144, 'Error', "Соединение с интернет отсутствует!")
Else
TrayTip ( "Этап инициализации.", "Соединение с интернет обнаружено." & @LF & "Продолжаю работу.", 3 , 1)
EndIf
$aCheckbox[$i] = GUICtrlCreateCheckbox($aCheckbox[$i], 8, 40 + ($i - 1) * 20)
Next
;Функция Пинга GOOGLE.RU
Func _Ping_Number($sHostName, $iTimeOut = 8000, $iNumber = 4)
Local $iPing
For $i = 1 To $iNumber
$iPing = Ping($sHostName, $iTimeOut)
If Not @error Then ExitLoop
Next
If @error Then
Return SetError(@error)
Else
Return SetError(0, $iPing, 1)
EndIf
EndFunc
То работает не как надо.
Подскажите как правильно?