SoloCodigo
Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: Drek en Miércoles 8 de Diciembre de 2004, 23:35
-
Un saludo
Quisiera saber si hay alguna forma de interceptar el numero de impresiones que se mandan desde office o dese cualquier otra aplicacion para informar al usuario cuantas impresiones son y enque impresora se van a imprimir.
alguien sabe si existe alguna API o algun metodo para hacer esto
gracias
-
Hola Drek.
Ahora mismo no sé cuales, pero existen funciones del api para enumerar los trabajos en las distintas colas de impresión (EnumPrinterJobs o algo así). Por supuesto primero deberás enumerar las distintas impresoras (EnumPrinters esta sí , seguro).
Si tengo tiempo (y ganas) luego busco... de todas formas me suena que en este mismo foro ya ha salido algo de esto, busca tú a ver.
Suerte.
-
hola Brroz gracias por responder.
con eso que me dices (EnumPrinterJobs) podria saber cuantas hojas se imprimen en un trabajo de impresion, lo que quiero es: una aplicacion residente en memoria que este testenado el puerto de la impresora para que antes de que se imprima se le informe al usuario si esta seguro de imprimir ese numero de hojas.
saludos
-
Listo ya tengo eso del numero de paginas y de la cola de impresion ahora necesito que mi aplicaion haga una pausa en la impresion para que se visualice una ventana informando sobre el numero de impresiones y la impresora a la quese mandaron estas, pero el problema es que no se como hacerle, en primara instancia se me ocurre hacer la aplicacion residente en memoria pero me enfrento a un problema como lograr leer el puerto ce manera contante ademas de lograr la pausa en la impresion.
Alguno de ustedes se le ocurre alguna idea para lograr esto.
saludos :hola:
-
Hola Drek.
Si tienes instalado con VB el visor de texto api, haz lo siguiente.
Ve al directorio donde tengas instalado VB, por ejemplo C:\Archivos de programa\Microsoft Visual Studio\
A continuación en la ruta C:\Archivos de programa\Microsoft Visual Studio\Common\Tools\Winapi debe encontrarse un archivo llamado WIN32API.Txt. Ábrelo con el wordpad o similar y busca las apariciones de winspool.drv irás viendo funciones del api que seguro te interesan (WaitForPrinterChange, ResetPrinter, GetJob, SetJob).
Lo que te puede llevar más tiempo es ver para qué sirve cada una y como se usa, pero para eso está el MSDN...
Suerte.
-
Gracias Brroz por el tip asi lo hare.