Compartir a través de


Proporcionar una interfaz IStiUSD

WIA se basa en STI. Para garantizar la integración de un minidriver WIA con STI, el minidriver debe implementar una interfaz derivada de los métodos de interfaz IStiUSD. Esta interfaz debe estar presente en un minidriver WIA. La interfaz IStiUSD se usa para administrar dispositivos (como cargar un controlador) y es el medio por el que los métodos de interfaz IStiDevice se comunican con dispositivos de imagen todavía. Un minidriver debe implementar completamente una interfaz derivada del método IStiUSD::Initialize para poder cargarla el servicio WIA.

Normalmente, los métodos de interfaz IStiUSD se llaman mediante métodos con nombre similares definidos por la interfaz IStiDevice . Los minidrivers suelen implementar métodos de interfaz IStiUSD mediante una llamada al controlador en modo kernel adecuado. Cada minidriver debe definir todos los métodos de interfaz, pero si un método no es necesario, simplemente puede devolver STIERR_UNSUPPORTED.

Vea el archivo de minidriver de muestra de cámara wiacam , IStiUSD.cpp, para obtener un ejemplo de cómo un minidriver implementa la interfaz IStiUSD .

En la tabla siguiente se enumeran y describen todos los métodos definidos por la interfaz IStiUSD . Se identifican los métodos que deben implementarse o implementarse condicionalmente mediante minidrivers WIA.

Método Descripción
IStiUSD::D eviceReset Restablece un dispositivo de imagen fija a un estado inicializado conocido.
IStiUSD::D iagnostic Ejecuta pruebas de diagnóstico en un dispositivo de imagen fija. Un minidriver WIA debe implementar este método.
IStiUSD::Escape Realiza una operación de E/S específica del proveedor en un dispositivo de imagen fija.
IStiUSD::GetCapabilities Devuelve las funcionalidades de un dispositivo de imagen fija.
IStiUSD::GetLastErrorInfo Devuelve información sobre el último error conocido asociado a un dispositivo de imagen fija.
IStiUSD::GetNotificationData Devuelve una descripción del evento más reciente que se produjo en un dispositivo de imagen fija.
IStiUSD::GetStatus Devuelve el estado de un dispositivo de imagen fija. Un minidriver WIA debe implementar este método si su dispositivo tiene objetos, como botones, que pueden generar eventos.
IStiUSD::Initialize Inicializa una instancia del objeto COM que define la interfaz IStiUSD. Un minidriver WIA debe implementar este método.
IStiUSD::LockDevice Bloquea un dispositivo para su uso exclusivo por parte del autor de la llamada. Un minidriver WIA debe implementar este método.
IStiUSD::RawReadCommand Lee la información de comandos de un dispositivo de imagen fija.
IStiUSD::RawReadData Lee datos de un dispositivo de imagen fija.
IStiUSD::RawWriteCommand Escribe información de comandos en un dispositivo de imagen fija.
IStiUSD::RawWriteData Escribe datos en un dispositivo de imagen fija.
IStiUSD::SetNotificationHandle Especifica un identificador de eventos que el minidriver debe usar para informar al autor de la llamada de los eventos del dispositivo. Un minidriver WIA debe implementar este método si su dispositivo tiene objetos, como botones, que pueden generar eventos.
IStiUSD::UnLockDevice Cierra el puerto del dispositivo. Un minidriver WIA debe implementar este método.