Fornecer uma interface IStiUSD
O WIA se baseia no STI. Para garantir a integração de um minidriver WIA com o STI, o minidriver deve implementar uma interface derivada dos métodos de interface IStiUSD. Essa interface deve estar presente em um minidriver WIA. A interface IStiUSD é usada para gerenciar dispositivos (como carregar um driver) e é o meio pelo qual os métodos de interface IStiDevice se comunicam com dispositivos de imagem ainda. Um minidriver deve implementar totalmente uma interface derivada do método IStiUSD::Initialize para ser carregada pelo serviço WIA.
Normalmente, os métodos de interface IStiUSD são chamados por métodos de nome semelhante definidos pela interface IStiDevice . Os minidrivers normalmente implementam métodos de interface IStiUSD chamando o driver de modo kernel apropriado. Cada minidriver deve definir todos os métodos de interface, mas se um método não for necessário, ele poderá simplesmente retornar STIERR_UNSUPPORTED.
Consulte o arquivo minidriver de exemplo de câmera wiacam , IStiUSD.cpp, para obter um exemplo de como um minidriver implementa a interface IStiUSD .
A tabela a seguir lista e descreve todos os métodos definidos pela interface IStiUSD . Métodos que devem ser implementados ou implementados condicionalmente por minidrivers WIA são identificados.
Método | Descrição |
---|---|
IStiUSD::D eviceReset | Redefine um dispositivo de imagem parada para um estado inicializado conhecido. |
IStiUSD::D iagnostic | Executa testes de diagnóstico em um dispositivo de imagem parada. Um minidriver WIA deve implementar esse método. |
IStiUSD::Escape | Executa uma operação de E/S específica do fornecedor em um dispositivo de imagem parada. |
IStiUSD::GetCapabilities | Retorna os recursos de um dispositivo de imagem parada. |
IStiUSD::GetLastErrorInfo | Retorna informações sobre o último erro conhecido associado a um dispositivo de imagem parada. |
IStiUSD::GetNotificationData | Retorna uma descrição do evento mais recente que ocorreu em um dispositivo de imagem parada. |
IStiUSD::GetStatus | Retorna o status de um dispositivo de imagem parada. Um minidriver WIA deve implementar esse método se seu dispositivo tiver objetos, como botões, que podem gerar eventos. |
IStiUSD::Initialize | Inicializa uma instância do objeto COM que define a interface IStiUSD. Um minidriver WIA deve implementar esse método. |
IStiUSD::LockDevice | Bloqueia um dispositivo para uso exclusivo pelo chamador. Um minidriver WIA deve implementar esse método. |
IStiUSD::RawReadCommand | Lê informações de comando de um dispositivo de imagem parada. |
IStiUSD::RawReadData | Lê dados de um dispositivo de imagem parada. |
IStiUSD::RawWriteCommand | Grava informações de comando em um dispositivo de imagem parada. |
IStiUSD::RawWriteData | Grava dados em um dispositivo de imagem parada. |
IStiUSD::SetNotificationHandle | Especifica um identificador de evento que o minidriver deve usar para informar o chamador de eventos do dispositivo. Um minidriver WIA deve implementar esse método se seu dispositivo tiver objetos, como botões, que podem gerar eventos. |
IStiUSD::UnLockDevice | Fecha a porta do dispositivo. Um minidriver WIA deve implementar esse método. |