Cómo habilitar el registro de Wiadebug.log

Seleccione idioma Seleccione idioma
Id. de artículo: 307001 - Ver los productos a los que se aplica este artículo
Este artículo se publicó anteriormente con el número E307001
Expandir todo | Contraer todo

En esta página

Resumen

De manera predeterminada, el servicio Adquisición de imágenes de Windows (WIA) registra los errores en un archivo llamado Wiadebug.log en la carpeta carpeta_Windows . En este artículo se describe cómo habilitar el registro en el archivo Wiadebug.log.

Más información

La información que el servicio WIA registra en este archivo puede ser muy útil durante el desarrollo de controladores. El nivel de registro está controlado por una entrada del Registro. Para WIA, esta clave reside en la siguiente clave del Registro, donde nombre_módulo es el nombre del módulo binario apropiado:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\StillImage\Debug\ nombre_módulo \DebugFlags
Para el servicio WIA, el módulo binario apropiado es Wiaservc.dll.

El valor de DebugFlags controla el nivel de registro. En la lista siguiente se describen tres de los valores:
  • 0x00000001 : Mostrar mensajes de error.
  • 0x00000002: Mostrar mensajes de advertencia.
  • 0x00000004: Mostrar mensajes de seguimiento.
El valor de DebugFlags es un valor de indicador; es decir, distintos valores pueden leerse juntos. Para activar el registro de errores, advertencias y seguimientos de una vez, establezca DebugFlags como 0x0000007.

Si cambia el valor de DebugFlags, detenga el servicio WIA (stisvc) y reinícielo para que los cambios surtan efecto.

Para detener el servicio Imagen fija, abra un símbolo del sistema y ejecute el comando siguiente:
net stop stisvc
Para iniciar el servicio Imagen fija, abra un símbolo del sistema y ejecute el comando siguiente:
net start stisvc
NOTA: un registro excesivo puede hacer que disminuya considerablemente el rendimiento. Aumente el nivel de registro sólo cuando esté intentando resolver un problema concreto. Una vez corregido el problema, restablezca el nivel de registro original.

En el caso siguiente se describe un problema típico y se describe cómo puede utilizar la información del archivo Wiadebug.log para resolver el problema.

Caso

Ha escrito un programa para probar un controlador de escáner que se está desarrollando. Para una de las pruebas intenta establecer los puntos por pulgada (ppp) del escáner a 1200 pero observa que esta acción produce un error. En el archivo Wiadebug.log se registran los datos siguientes:
wiasGetChangedValueLong, validate prop 6147 failed hr: 0x80070057
wiasUpdateScanRect, CheckXResAndUpdate failed (0x80070057)
CDrvWrap::WIA_drvValidateItemProperties, Error calling driver:
drvValidateItemProperties with hr = 0x80070057
NOTA: este comportamiento es típico si un programa escribe un valor no válido.

Estas entradas del registro indican que el controlador está informando de que el programa escribió un valor no válido. A partir de esta información no se sabe claramente cuál es el problema exacto. Si aumenta el nivel de registro de WIA para que se informe de las advertencias y de los errores, se grabará la siguiente información en el archivo Wiadebug.log:
  • 75
  • 100
  • 150
  • 200
  • 300
  • 600
wiasValidateItemProperties, invalid LIST value for :
propID) Horizontal Resolution, value = 1200
Los valores válidos son: wiasGetChangedValueLong, validate prop 6147 failed hr: 0x80070057
wiasUpdateScanRect, CheckXResAndUpdate failed (0x80070057)
CDrvWrap::WIA_drvValidateItemProperties, Error calling driver:
drvValidateItemProperties with hr = 0x80070057
NOTA: este comportamiento es típico si el programa escribe un valor no válido.

El resultado muestra que la propiedad Horizontal Resolution es la causa del error. El programa está intentando establecer la resolución a 1200, pero la lista de resoluciones admitidas no incluye 1200; por tanto, el ayudante de validación del servicio WIA (wiasValidateItemProperties) rechaza la solicitud para establecer este valor.

Ahora que ha identificado el problema puede determinar si va a revisar el controlador o el programa. Si las especificaciones del escáner hacen que admita todas las resoluciones comprendidas entre 100 y 1400 ppp, el controlador debe ser capaz de controlar una solicitud de 1200 ppp. Si el escáner no admite este valor, cambie el programa de manera que no intente establecer la resolución horizontal a un valor que no sea válido para esta propiedad. En este caso, el programa debe comprobar que un valor es válido antes de intentar establecer una propiedad a dicho valor.

Propiedades

Id. de artículo: 307001 - Última revisión: miércoles, 12 de septiembre de 2001 - Versión: 1.0
La información de este artículo se refiere a:
  • Microsoft Windows XP Professional Edition
Palabras clave: 
kbhowto kbtool KB307001

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com