Fournir une interface IStiUSD
WIA s’appuie sur STI. Pour garantir l’intégration d’un minidriver WIA à STI, le minidriver doit implémenter une interface dérivée des méthodes d’interface IStiUSD. Cette interface doit être présente dans un minidriver WIA. L’interface IStiUSD est utilisée pour la gestion des appareils (par exemple, le chargement d’un pilote) et est le moyen par lequel les méthodes d’interface IStiDevice communiquent avec les appareils à image fixe. Un minidriver doit implémenter entièrement une interface dérivée de la méthode IStiUSD ::Initialize pour être chargé par le service WIA.
En règle générale, les méthodes d’interface IStiUSD sont appelées par des méthodes nommées de la même façon définies par l’interface IStiDevice . Les minidrivers implémentent généralement les méthodes d’interface IStiUSD en appelant le pilote en mode noyau approprié. Chaque minidriver doit définir toutes les méthodes d’interface, mais si une méthode n’est pas nécessaire, elle peut simplement retourner STIERR_UNSUPPORTED.
Consultez l’exemple de fichier minidriver de caméra wiacam , IStiUSD.cpp, pour obtenir un exemple de la façon dont un minidriver implémente l’interface IStiUSD .
Le tableau suivant répertorie et décrit toutes les méthodes définies par l’interface IStiUSD . Les méthodes qui doivent être implémentées ou implémentées de manière conditionnelle par les minidrivers WIA sont identifiées.
Méthode | Description |
---|---|
IStiUSD ::D eviceReset | Réinitialise un appareil à image fixe à un état initialisé connu. |
IStiUSD ::D iagnostic | Exécute des tests de diagnostic sur un appareil à image fixe. Un minidriver WIA doit implémenter cette méthode. |
IStiUSD ::Escape | Effectue une opération d’E/S spécifique au fournisseur sur un appareil d’image fixe. |
IStiUSD ::GetCapabilities | Retourne les fonctionnalités d’un appareil d’image fixe. |
IStiUSD ::GetLastErrorInfo | Retourne des informations sur la dernière erreur connue associée à un appareil d’image fixe. |
IStiUSD ::GetNotificationData | Retourne une description de l’événement le plus récent qui s’est produit sur un appareil d’image fixe. |
IStiUSD ::GetStatus | Retourne la status d’un appareil d’image fixe. Un minidriver WIA doit implémenter cette méthode si son appareil a des objets, tels que des boutons, qui peuvent générer des événements. |
IStiUSD ::Initialize | Initialise une instance de l’objet COM qui définit l’interface IStiUSD. Un minidriver WIA doit implémenter cette méthode. |
IStiUSD ::LockDevice | Verrouille un appareil pour une utilisation exclusive par l’appelant. Un minidriver WIA doit implémenter cette méthode. |
IStiUSD ::RawReadCommand | Lit les informations de commande à partir d’un appareil d’image fixe. |
IStiUSD ::RawReadData | Lit les données d’un appareil d’image fixe. |
IStiUSD ::RawWriteCommand | Écrit les informations de commande sur un appareil d’image fixe. |
IStiUSD ::RawWriteData | Écrit des données sur un appareil d’image fixe. |
IStiUSD ::SetNotificationHandle | Spécifie un handle d’événement que le minidriver doit utiliser pour informer l’appelant des événements d’appareil. Un minidriver WIA doit implémenter cette méthode si son appareil a des objets, tels que des boutons, qui peuvent générer des événements. |
IStiUSD ::UnLockDevice | Ferme le port de l’appareil. Un minidriver WIA doit implémenter cette méthode. |