2011-05-31 3 views
3

Я пытаюсь использовать TWebBrowser в приложении типа Консоль/Сервис (без каких-либо окон). Navigate определенно что-то делает, но никогда не вызывает onDocumentComplete. Есть ли другой способ получить доступ к IHTMLDocument2 некоторого URL-адреса?TWebBrowser без родительского окна

спасибо.

+2

Что конкретно вы надеетесь достичь? TWebBrowser может не быть вашим единственным вариантом здесь. –

+0

Если вы хотите загрузить какой-либо HTML или что-то через HTTP, вам лучше с HTTP-клиентом, например, от Indy –

+1

Вы просто хотите что-то загрузить? http://stackoverflow.com/questions/4521535/delphi-file-downloader-component/4521575#4521575 –

ответ

1

Перед использованием экземпляра TWebBrowser (например, с помощью Navigate2) вызовите его метод HandleNeeded. Это будет выделять «невидимый» родительский дескриптор окна и выпрямить любые события.

+0

'HandleNeeed()' не выделяет скрытое родительское окно. Это требует, чтобы свойство Parent было назначено заранее. Браузер - это визуальный контроль. Для этого требуется визуальное родительское окно. –

+0

Он вызывает TWinControl.CreateHandle, который вызывает CreateWnd, который создает необходимый визуальный оконный дескриптор. (хотя 0x0 пикселей большой и не видимый, но все же визуальный) –

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