Identificateurs d’interface pour les pilotes d’imprimante
Important
La plateforme d’impression moderne est le moyen privilégié de Windows pour communiquer avec les imprimantes. Nous vous recommandons d’utiliser le pilote de classe IPP en boîte de Microsoft, ainsi que les applications de support d’impression (PSA), pour personnaliser l’expérience d’impression dans Windows 10 et 11 pour le développement de périphériques d’impression.
Pour plus d’informations, veuillez consulter la section Plateforme d’impression moderne et le Guide de conception des applications de support d’impression.
Un ensemble de GUID est défini dans prcomoem.h. Chacun de ces GUID est un identifiant d’interface pour l’une des interfaces COM utilisées pour la communication entre les pilotes d’imprimante (Unidrv et Pscript5) et les plug-ins.
Pour Windows 2000 et Windows XP, les GUID suivants sont définis :
IID_IPrintOemUIIID_IPrintOemUI2 (plug-ins d’interface utilisateur Pscript5 sur Windows XP et les versions ultérieures du système d’exploitation Windows) IID_IPrintOemDriverUIIID_IPrintCoreUI2 (plug-ins d’interface utilisateur Pscript5 sur Windows XP et les versions ultérieures du système d’exploitation Windows) IID_IPrintOemUniIID_IPrintOemUni2 (plug-ins de rendu Unidrv sur Windows XP et les versions ultérieures du système d’exploitation Windows) IID_IPrintOemUni3 (plug-ins de rendu Unidrv sur Windows Vista et les versions ultérieures du système d’exploitation Windows) IID_IPrintOemDriverUniIID_IPrintOemPSIID_IPrintOemPS2 (plug-ins de rendu Pscript5 sur Windows XP et les versions ultérieures du système d’exploitation Windows) IID_IPrintOemDriverPSIID_IPrintCorePS2 (plug-ins de rendu Pscript5 sur Windows XP et les versions ultérieures du système d’exploitation Windows) Chaque GUID identifie une version d’une interface. Si une nouvelle version d’une interface est définie, un nouveau GUID est ajouté à la liste.
Les plug-ins d’interface utilisateur et les plug-ins de rendu doivent identifier les versions d’interface qu’ils prennent en charge. Le pilote d’imprimante (Unidrv ou Pscript5) appelle la méthode IUnknown::QueryInterface d’un plug-in (décrite dans la documentation du SDK Windows), en spécifiant un identifiant d’interface comme entrée. Si le plug-in prend en charge la version spécifiée, la méthode doit retourner un pointeur vers l’interface avec un statut de retour S_OK. Sinon, elle doit renvoyer E_NOINTERFACE. Le pilote commence avec l’identifiant d’interface pour la version la plus récente et continue d’appeler QueryInterface avec les identifiants de versions antérieures jusqu’à ce que la méthode renvoie S_OK ou que le pilote ait épuisé la liste des identifiants de version.
De même, Unidrv et Pscript5 fournissent des méthodes IUnknown::QueryInterface pour les interfaces COM IPrintOemDriverUI, IPrintCoreUI2, IPrintOemDriverUni, IPrintOemDriverPS, ou IPrintCorePS2. Les plug-ins doivent appeler la méthode QueryInterface de l’interface appropriée pour déterminer la version d’interface prise en charge par le pilote et pour recevoir un pointeur vers l’interface.