Partager via


Identificateurs d’interface pour les pilotes d’imprimante

Important

Nous vous recommandons d’utiliser le pilote de classe de boîte de réception IPP 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 d’appareils d’imprimante.

Pour plus d’informations, consultez le guide de conception d’application de prise en charge de l’impression.

Un ensemble de GUID est défini dans prcomoem.h. Chacun de ces GUID est un identificateur 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 versions ultérieures du système d’exploitation Windows) IID_IPrintOemDriverUIIID_IPrintCoreUI2 (plug-ins d’interface utilisateur Pscript5 sur Windows XP et versions ultérieures du système d’exploitation Windows) IID_IPrintOemUniIID_IPrintOemUni2 (plug-ins de rendu Unidrv sur Windows XP et versions ultérieures du système d’exploitation Windows) IID_IPrintOemUni3 (Unidrv render plug-ins sur Windows Vista et versions ultérieures du système d’exploitation Windows) IID_IPrintOemDriverUniIID_IPrintOemPSIID_IPrintOemPS2 (plug-ins de rendu Pscript5 sur Windows XP et versions ultérieures du système d’exploitation Windows) IID_IPrintOemDriverPSIID_IPrintCorePS2 (plug-ins de rendu Pscript5 sur Windows XP et 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 Kit de développement logiciel (SDK) Windows), en spécifiant un identificateur 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 ainsi qu’un état de retour de S_OK. Dans le cas contraire, il doit retourner E_NOINTERFACE. Le pilote commence par l’identificateur d’interface de la version la plus récente et continue à appeler QueryInterface avec les identificateurs de version antérieure jusqu’à ce que la méthode retourne S_OK ou que le pilote épuise la liste des identificateurs 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 du pilote et recevoir un pointeur d’interface.