Share via


Vue d’ensemble de la notification du spouleur

La notification du spouleur se compose d’un ensemble d’interfaces COM pour les composants d’impression hébergés par un spouleur qui leur permettent d’ouvrir un canal de données bidirectionnel ou unidirectionnel avec des applications s’exécutant dans des sessions autres que la session du spouleur.

Ce canal de données est basé sur les notifications et est associé à un nom d’imprimante ou à un nom de serveur. Seuls les composants d’impression hébergés par le spouleur peuvent ouvrir le canal de notification, mais les notifications peuvent être envoyées dans les deux sens.

La notification spouleur inclut également un ensemble d’interfaces COM que les composants et les applications d’impression peuvent utiliser pour s’inscrire aux notifications d’impression. Les applications peuvent s’inscrire aux notifications, mais elles ne peuvent pas ouvrir de canaux de notification. L’impression des composants chargés par le spouleur peut s’inscrire aux notifications.

Pour les canaux bidirectionnels, lorsqu’une notification est reçue, le client écouteur est également informé du canal qu’il peut utiliser pour renvoyer des données au composant d’impression.

Pour les canaux unidirectionnels, le client écouteur reçoit uniquement la notification, car il n’est pas censé répondre à la notification.

Un composant spouleur in-process peut ouvrir un canal de notification, qu’il y ait ou non des écouteurs. Une fois le canal ouvert, le composant d’impression peut envoyer des notifications. S’il n’y a pas d’écouteurs, l’appel réussit toujours, mais la valeur retournée indique que personne n’a reçu la notification.

Un composant d’impression chargé par le spouleur ou une application peut s’inscrire aux notifications auprès d’une imprimante ou d’un serveur (local ou distant), qu’il existe ou non des canaux ouverts.

Une fois qu’un canal est ouvert et qu’une notification est envoyée, le client de l’écouteur reçoit la notification. Le client écouteur reçoit également des informations sur le canal utilisé pour la notification (pour les canaux bidirectionnels).

Le mécanisme de notification est asynchrone. L’ordre des notifications est garanti.