Автор Тема: Ошибка при использовании функции _IELoadWait($oIE)  (Прочитано 2583 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Vlasssov [?]

  • Осваивающий
  • **
  • Сообщений: 428
  • Репутация: 25
  • Пол: Мужской
  • Тульский электронный са
    • Яндекс-Дзен
    • Награды
  • Версия AutoIt: 3.3.14.0
Ошибка возникает в функции _IELoadWait() следующем месте:

Код: AutoIt [Выделить]
    Case __IEIsObjType($o_object, "window") ; Window, Frame, iFrame
    While Not (String($o_object.document.readyState) = "complete" Or $o_object.document.readyState = 4 Or $f_Abort)
        If (TimerDiff($IELoadWaitTimer) > $i_timeout) Then
            $i_ErrorStatusCode = $_IEStatus_LoadWaitTimeout
            $f_Abort = True
        EndIf
        ; Trap unrecoverable COM errors
            If @error = $_IEStatus_ComError And __IEComErrorUnrecoverable() Then
                $i_ErrorStatusCode = __IEComErrorUnrecoverable()
                $f_Abort = True
            EndIf
                Sleep(100)
            WEnd
            [color=red]WEnd^ ERROR[/color]
 


C:\Program Files\AutoIt3\Include\IE.au3 (585) : ==> The requested action with this object has failed.:
WEnd
WEnd^ ERROR

Такое ощущение, что количество циклов while ограничено, и из-за долгого ожидания тут система выпадает?
Кто-нибудь может пояснить что это? И как с этим бороться?
Тульский элетронный самовар

Русское сообщество AutoIt

Ошибка при использовании функции _IELoadWait($oIE)
« Отправлен: Май 02, 2013, 13:05:51 »

Оффлайн darkwhite [?]

  • Новичок
  • *
  • Сообщений: 129
  • Репутация: 4
  • Пол: Мужской
    • Награды
а может ты ее не так применяешь?где твой код?

Оффлайн Vlasssov [?]

  • Осваивающий
  • **
  • Сообщений: 428

  • Автор темы
  • Репутация: 25
  • Пол: Мужской
  • Тульский электронный са
    • Яндекс-Дзен
    • Награды
  • Версия AutoIt: 3.3.14.0
 :laugh: А как ее еще применить можно???

Вообщем дело в том, что параметр браузера readyState принимал значение "interactive" и функция не работала. Сделал вот такую вот функцию

Код: AutoIt [Выделить]
Func Marathon_wait()

    Local $ivv = 0
    While String($oIE.document.readyState) <> "complete"
        $ivv = $ivv + 1
        $ss = String($ivv) & " .document.readyState = " & String($oIE.document.readyState)
    _otc($ss)

    WEnd

EndFunc   ;==>Marathon_wait
 


Заработала...

Русское сообщество AutoIt

Re: Ошибка при использовании функции _IELoadWait($oIE)
« Ответ #2 Отправлен: Май 13, 2013, 14:14:56 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
4 Ответов
2453 Просмотров
Последний ответ Декабрь 04, 2012, 21:36:35
от CreatoR
9 Ответов
3859 Просмотров
Последний ответ Март 06, 2013, 19:49:11
от viter
2 Ответов
2749 Просмотров
Последний ответ Апрель 14, 2013, 23:22:46
от Yura-H2O
2 Ответов
2123 Просмотров
Последний ответ Август 01, 2014, 10:31:04
от alex33
0 Ответов
923 Просмотров
Последний ответ Август 01, 2014, 07:02:40
от madmasles
0 Ответов
716 Просмотров
Последний ответ Май 19, 2015, 04:13:03
от Zalman1980
2 Ответов
1663 Просмотров
Последний ответ Июнь 20, 2015, 17:14:02
от Gen345
9 Ответов
2176 Просмотров
Последний ответ Июнь 21, 2015, 21:18:53
от Zalman1980
1 Ответов
603 Просмотров
Последний ответ Вчера в 23:53:00
от alex33
2 Ответов
174 Просмотров
Последний ответ Апрель 17, 2019, 14:20:20
от Cornet