Méthode IPrinterQueue ::SendBidiQuery (printerextension.h)
Effectue une opération d’actualisation asynchrone avec la requête spécifiée et appelle la méthode IPrinterQueueEvent ::OnBidiResponseReceived .
Syntaxe
HRESULT SendBidiQuery(
[in] BSTR bstrBidiQuery
);
Paramètres
[in] bstrBidiQuery
Requête spécifiée.
Valeur retournée
Cette méthode retourne une valeur HRESULT .
Remarques
Lorsque la méthode SendBidiQuery est appelée, elle déclenche immédiatement l’événement IPrinterQueueEvent ::OnBidiResponseReceived , s’il existe une réponse mise en cache disponible. Le système d’impression démarre ensuite une opération asynchrone pour utiliser les interfaces de communication Bidi. À ce stade , SendBidiQuery retourne, débloquant ainsi l’appelant. Une fois l’opération asynchrone terminée, le système d’impression déclenche à nouveau l’événement IPrinterQueueEvent ::OnBidiResponseReceived . SendBidiQuery est dissocié de sa réponse associée. Le découplage est effectué car, dans le cas où il n’y a pas de données mises en cache, la latence résultante peut être due à de nombreux facteurs et une réponse immédiate ne peut pas être attendue. En outre, l’appelant peut recevoir plusieurs réponses selon qu’il existe ou non des données mises en cache et qu’il existe une réponse de l’appareil.
L’utilisation des interfaces de communication Bidi entraîne l’actualisation des valeurs demandées par le moniteur de port. Dans le cas d’USB, si un composant JavaScript est disponible, le code JavaScript est appelé pour actualiser les valeurs demandées.
Le cache est également mis à jour dans les situations suivantes :
À intervalles prédéterminés
Pour les appareils WSD, les données sont mises à jour lorsque l’appareil signale des modifications via des événements.
Pour les périphériques TCP & USB, l’intervalle d’actualisation est basé sur l’emplacement où la valeur Bidi est définie.
Toutes les valeurs Bidi standard (telles que définies par les fichiers Bidi incorporés du moniteur de port) sont actualisées à un intervalle prédéfini par les moniteurs de port. Si la requête Bidi spécifique fait partie de l’extension Bidi IHV, l’intervalle d’actualisation est spécifié dans le fichier d’extension XML pour chaque valeur individuelle.
Quand la configuration de l’imprimante change
- Par exemple, lorsqu’un appareil basé sur WSD déclenche un événement pour informer le spouleur (WSDMon) que quelque chose sur l’appareil a changé. En d’autres termes, la configuration de l’imprimante a changé.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 8 |
Serveur minimal pris en charge | Windows Server 2012 |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | printerextension.h |