Mi pregunta es la siguiente.
Yo quiero hacer un programa en Visual Basic que imprima de forma automática
unos cuantos pdfs, todos los que haya en un directorio por ejemplo. <?:namespace prefix = o ns = "urn:schemas-microsoft-comfficeffice" />


He conseguido hacerlo si la carpeta tiene un sólo .pdf, pero si la carpeta
tiene varios .pdf la impresora sólo me imprime los últimos que el programa le
manda imprimir. Creo que el problema es que el programa es mucho más rápido
enviando peticiones de impresión que la memoria de la impresora.


Mi código es el siguiente


temp_path = directorio_contenedor & "\*.pdf"
str_dir = Dir(temp_path, vbNormal)


Do While str_dir <> ""
FilePDF = directorio_contenedor & "\" & str_dir
Pdf1.LoadFile ""
DoEvents
Pdf1.LoadFile FilePDF
Pdf1.printAll


contador = contador + 1
str_dir = ""
str_dir = Dir$()


Loop


Y mi pregunta es: ¿ Existe alguna manera de controlar el estado de
impresión? Es decir, mandar imprimir un pdf y dormir el programa hasta que me
llegue un evento de que ha terminado de imprimir el anterior pdf.