Plug-ins de rendu basés sur COM
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 les articles Plateforme d’impression moderne et Guide de conception des applications de support d’impression.
Pour fournir des fonctions de raccordement personnalisées, votre plug-in de rendu basé sur COM doit implémenter la méthode IPrintOemUni::EnableDriver ou IPrintOemPS::EnableDriver, qui remplit une structure DRVENABLEDATA avec l’adresse de chaque fonction de raccordement.
Un plug-in de rendu basé sur COM peut raccorder une fonction DDI de graphiques uniquement si le pilote Unidrv ou Pscript5 définit la fonction. Pour obtenir la liste de ces fonctions, consultez IPrintOemUni::EnableDriver ou IPrintOemPS::EnableDriver.
Si vous fournissez une fonction de raccordement personnalisée particulière, cette fonction a la priorité sur la fonction DDI de graphiques équivalente du pilote. Lorsque vous concevez une fonction de raccordement personnalisée, vous disposez des options suivantes :
La fonction de raccordement peut gérer complètement l’opération DDI de graphiques en interne.
La fonction de raccordement peut rappeler la fonction DDI de graphiques équivalente du pilote d’imprimante.
En rappelant la fonction DDI de graphiques du pilote, la fonction de raccordement peut effectuer le prétraitement ou le posttraitement des arguments de fonction, mais permet toujours au pilote d’effectuer réellement l’opération DDI de graphiques. Un des arguments d’entrée d’une méthode IPrintOemUni::EnablePDEV ou IPrintOemPS::EnablePDEV d'un plug-in de rendu est une structure DRVENABLEDATA qui contient des pointeurs vers les fonctions DDI de graphiques du pilote. Si vous souhaitez rappeler ces fonctions, vous devez enregistrer le contenu de cette structure.
Il peut être nécessaire de fournir une structure PDEV personnalisée. Vous pouvez référencer cette structure à partir d’une fonction de raccordement DDI de graphiques, via le pointeur de structure SURFOBJ que chaque fonction de raccordement reçoit comme entrée. Plus précisément, le membre dhpdev de la structure SURFOBJ pointe vers une structure DEVOBJ et le membre pdevOEM de la structure DEVOBJ pointe vers votre structure PDEV personnalisée.