Hola, ya tambien abogo por el Application.ProcessMessages sino lo has usado ya.
Pero hay algo que me intriga, no se si es cuestión de la nomenclatura que usas o que, es lo siguiente:
Tienes un formulario que realiza las consultas y luego tienes un form que hace crea una ventana de espera, pero luego tienes esto:
Código Delphi
[-]
with TfrmWaitForm.create do
try
show;
crearVentana(TfrmInformeCarterosTodosPendientes); finally
close;
free;
end;
¿Creas el Form llamado TfrmWaitForm, y luego el crea las consultas?
De todos modos quizá deberías poner parte del código de la función CrearVentana y la función que realiza las consultas y supuestamente actualizas el form de espera, para ver donde falla.
Saludos