Jump to content

Proyecto: sistema de control de impresoras en C#


Recommended Posts

Hola,

 

Para la universidad estoy haciendo un proyecto que consiste en gestionar dispositivos de impresión de una empresa, porque estas tienen muchos. Resulta que ahora estoy buscando ayuda, ya que no se me ocurre como hacer que mi aplicación lea el estado de las impresoras.

Para explicarme mejor, se supone que teniendo el driver instalado yo debería lograr capturar las características de la impresora y también gestionarla, editando sus propiedades o ver el estado de tinta que es lo que mas me importa. Pero no se me ocurre como hacerlo, además he navegado y navegado sin éxito de una respuesta.

 

Para que tengan una idea de lo que quiero hacer, existen muchas aplicaciones de las mismas empresas que sirven para ver el estado de las impresoras, un ejemplo es HP Web Jetadmin.

 

Espero que se entienda lo que quiero hacer y si alguien me puede dar una manito estaré muy agradecido.

 

saludos,

Link to comment
Share on other sites

Creo que tendrías que desarrollar una aplicación WPF, así puedes usar la funcionalidad de espacio de nombres System.Printing. Obviamente, eso significa que tu aplicación deberá usar .NET 3.0 o superior (no creo que eso sea problema).

Se supone que de esta forma no tendrías que recurrir a utilidades o controles ActiveX del fabricante, sino que te comunicas directamente con el servidor de impresión.

En la página de MS hay algunos ejemplos de cómo realizar algunas tareas comunes:

Échale una mirada a las propiedades de la clase PrintSystemJobInfo (puedes saber, por ejemplo, cuántas páginas se han impreso hasta el momento).
Link to comment
Share on other sites

El problema con System.Printing es que los eventos de disparan casi en su totalidad al momento de enviar un trabajo impresión. Lo que significa que el no podría recuperar el estado de la impresora a menos que enviara algo a ésta, siendo un gasto innecesario de papel y un resultado para nada elegante.

 

Creo que lo mas ideal sería usar System.Management o Win32_Printer para hablar directamente con la impresora y no usar la cola de impresión como intermediario.

 

Aqui te dejo unos link que podrían ser de ayuda para al menos darle partida al asunto.

 

http://social.msdn.microsoft.com/Forums/vstudio/en-US/83c89952-58a6-42e4-bef1-910d7f2795d8/printer-status-listener

http://stackoverflow.com/questions/887785/talking-to-a-printer

http://msdn.microsoft.com/en-us/library/gg196673%28v=vs.85%29.aspx

http://stackoverflow.com/questions/296182/how-to-get-printer-info-in-net

Edited by The Duke of Quakem
Link to comment
Share on other sites

Es casi imposible hacer lo que tu quieres.....porque de partida cada marca de impresora usa una forma distinta para medir la tinta.....o distintos parámetros entregarían en caso de que lograses la info con éxito....aunque tuvieses la info, deberías encontrar la forma de tratar la data acorde acada modelo de impresora caxai? :tonto:

 

 

PS: Yo que tu cambio el tema del proyecto ;)

Link to comment
Share on other sites

se me ocurre poner una balanza digital conectada al pc y masando la impresora, dependiedo de la perdida de peso (papel-tinta) lograr una funcion que te diga si estas bajo de tinta, jajaja es una ocurrencia tonta...

 

pero como dice ash :mgay: es un poco complicado lo que pides...

Edited by cañangasñangas
Link to comment
Share on other sites

  • 1 year later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...