Зацикливание на WB.document.write

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Space
Combo-маньяк
Combo-маньяк
 
Сообщения: 818
Зарегистрирован: 11.01.2007 (Чт) 1:19
Откуда: Украина

Зацикливание на WB.document.write

Сообщение Space » 18.09.2008 (Чт) 23:30

В основном работает нормально, но иногда зацикливается(WB.readyState=3) при старте программы и первом WB.document.write на:
Код: Выделить всё
  On Error GoTo WaitAwhileLonger
    WB.document.write sPageHTML
    While WB.readyState <> READYSTATE_COMPLETE
'ждём создания документа
       DoEvents
    Wend
При повторном запуске программы всё работает! Пустой бланк (navigate "res://mshtml.dll/blank.htm") перед этим кодом грузится нормально.
Код: Выделить всё
sPageHTML = "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'>" _
    & vbCrLf & "<HTML><HEAD><META http-equiv=Content-Type content=" & Chr(34) & "text/html; charset=windows-1251" & Chr(34) & ">" _
    & vbCrLf & "<META content=" & Chr(34) & "MSHTML 6.00.2900.2180" & Chr(34) & " name=GENERATOR>" & vbCrLf _
    & "<STYLE TYPE=" & Chr(34) & "text/css" & Chr(34) & ">" & vbCrLf
'здесь стили...
    sPageHTML = sPageHTML & "</STYLE>" & vbCrLf & "</HEAD>" & vbCrLf

    sPageHTML = sPageHTML & "<BODY " _
    & HeaderHTML.BodyBACKGROUND & " " _
    & HeaderHTML.BodyBGCOLOR & " " _
    & HeaderHTML.BodyText & " " _
    & HeaderHTML.BodyLINK & " " _
    & HeaderHTML.BodyVLINK & " " _
    & HeaderHTML.BodyALINK & " " _
    & "topmargin=" & Chr(34) & "1" & Chr(34) & " leftmargin=" & Chr(34) & "5" & Chr(34) & ">" & vbCrLf _
    & "<div id=MyID></div>" & vbCrLf _
    & "</BODY>" & vbCrLf _
    & "</HTML>" & vbCrLf

Записывается после WB.document.write
? WB.document.body.innerhtml
<DIV id=MyID></DIV>

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Re: Зацикливание на WB.document.write

Сообщение Antonariy » 19.09.2008 (Пт) 8:45

А зачем крутить DoEvents после write?
Лучший способ понять что-то самому — объяснить это другому.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, Yandex-бот и гости: 73

    TopList