Perdón por la tardanza, en contestar.
Eso es lo que, en principio, suponía que pasaba, que la página no estaba totalmente cargada. Pero, por ejemplo, no funciona si hago un sleep() de 10 segundos, o un ciclo For muy largo. Sólo funciona si, de alguna manera, salgo del procedimiento que está corriendo, aunque sea por un breve periodo de tiempo (1 segundo, p.e.). Por eso SI que funciona si lo ejecuto desde otro botón, si hago correr un nuevo form durante un tiempo determinado, o si ejecuto un ShowMessage, que es modal.
El programa, ahora, se ejecuta bien; lo que quería saber es porqué. Qué órdenes debo usar para parar totalmente un procedimiento, en el entorno web, hasta obtener la respuesta deseada y que funcione elegantemente.
Código:
while webBrowser2.ReadyState < READYSTATE_INTERACTIVE do
Application.ProcessMessages;
¡Ésta no funciona adecuadamente!
Gracias.