Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: duke3d en 17 Mayo 2015, 01:23 am



Título: [Ayuda] Auditar detalles trabajos impresión en Windows
Publicado por: duke3d en 17 Mayo 2015, 01:23 am
Hola,

Acabo de registrarme en el foro, para ver si alguien me puede dar una idea.

Quiero crear una aplicación con la que pueda obtener información detallada para cada trabajo de impresión enviado a las impresoras conectadas a un servidor Windows 2008.

En el visor de eventos se pueden registrar los trabajos de impresión y están casi todos los detalles para cada trabajo de impresión como:
- usuario.
- Nombre de documento.
- Fecha de impresión.
- Número de páginas.
- Impresora por la que se ha imprimido.
- Resolucion impresion

Sin embargo hay detalles de los trabajos de impresión que no quedan, por lo menos aparentemente, resgistrados; al menos este:

- color de impresión.

Dentro del visor de eventos si nos fijamos en los detalles de un evento con "Id. de evento 805" (de los eventos PrintService) en la vista XML podemos ver el siguiente fragmento de XML:

<UserData>
- <RenderJobDiag xmlns="http://manifests.microsoft.com/win/2005/08/windows/printing/spooler/core/events">
  <JobId>2</JobId>
  <GdiJobSize>393216</GdiJobSize>
  <ICMMethod>0</ICMMethod>
  <Color>2</Color>
  <XRes>0</XRes>
  <YRes>0</YRes>
  <Quality>300</Quality>
  <Copies>1</Copies>
  <TTOption>0</TTOption>
  </RenderJobDiag>
  </UserData>

Aparentemente <Color>2</Color> es un atributo indicador de color, pero en la práctica no es así, pues aparece ese mismo valor para distintos trabajos de impresión en color y en escala de grises.

Alguna idea para poder obtener ese atributo. ¿Se podrían interceptar las propiedades de impresión para los trabajos de impresión de alguna manera para poder obtener todas las propiedades que necesito?.

Muchas gracias por la atención y quedo esperando vuestra ayuda.

P.D: He estado buscando con google, en MSDN de Microsoft y no he encontrado nada util al respecto.