Hola, les explico el por qué de esa pregunta
Tengo una aplicación que manda a imprimir ciertos archivos en diferentes formatos (jpg, doc, xls y pdf) y funciona bien en la mayoría de las ocaciones, pero a veces, solo a veces algunos archivos PDF no se mandan a la cola de impresión (mandó a imprimir con un shellExecute, por cierto).
Aquí lo extraño del asunto es que muchas veces si se imprimien, solo de forma esporádica y sin aparente relación entre ellos, algunos archivos no llegan nunca a la cola de impresión SALVO si coloco un MessageDlg con algún aviso como "Verifique que se haya impreso correctamente el documento"; con esa interrupción todos los archivos de imprimen bien

. Pero el usuario no quiere ese mensaje

, por eso mi pregunta ¿qué hace el MessageDlg internamente que permite que se manden los archivos a la cola de impresión?
Y es que el problema es por esto. Debo mandar un correo cuando un archivo no se imprima, para ello despues del método de impresión monitoreo la cola de impresión 5 segundos (es el tiempo que consideré suficiente para mandar a imprimir) y si no llega a la cola el correo de manda; con estos archivos PDF problemáticos el correo siempre de manda pese a que
si se imprimieron (durante la interrupción del MessageDlg), ¿me doy a entender?, de nada sirve que espere 10 segundos o 10 minutos por que esos archivos no llegan nunca a la cola, solo hasta que la aplicación sufre una detención como la del MessageDlg, no lo entiendo. Pené que era cosa del acrobat y lo mato por código después de que se imprimen cada uno de los docs pero nada.
¿Alguien puede aconsejarme algo?
Saludos y gracias