2009-12-15 2 views
1

Короче говоря: я пытаюсь написать приложение, которое перенесет историю IE в текстовый файл. Потому что я ленив, я пошел искать существующую библиотеку и нашел этот красивый проект для сборки из: http://www.freevbcode.com/ShowCode.asp?ID=6702. Только, я застрял ...Зачем нужна эта программа MsgBox?

я, наконец, получил программу на свалку истории, но работает только если я поставлю MsgBox() на линии 169 Module1.vb. Я пробовал поставить там Thread.Sleep(), но это не работает. Там должен быть поле для сообщений, или только в списке истории.

Моя догадка, так как это говорит о wininet.dll, это вопрос параллелизма. Thread.Sleep() (для следующего цикла) для остановки прослушивания программы; ничто не заставляет его выйти из цикла до назначения значений, но MsgBox() в порядке. Есть ли что-то помимо MsgBox(), которое будет иметь тот же эффект? Я бы не хотел, чтобы тридцать раз ударил ОК, чтобы программа работала.

Вот моя ветка/версия/производная работа: ; это проект VS.NET2003.

ответ

5

MsgBox() передает контур сообщения. Это может привести к разрыву всего кода. Windows получает возможность рисовать себя. COM-блокировки из-за того, что основной поток, застревающий в цикле, решается, всегда возникает проблема, когда IE задействован. Вызов DoEvents() - очень несовершенная альтернатива MsgBox().

+0

Huh! Это вроде как работа. DoEvents() получил еще один день. Я думаю, для этого кода я застрял в MsgBox. Спасибо. – AndrewBurton

Смежные вопросы