Partager via


Méthode IPrintOemUni ::EnablePDEV (prcomoem.h)

La IPrintOemUni::EnablePDEV méthode permet à un plug-in de rendu pour Unidrv de créer sa propre structure PDEV.

Syntaxe

HRESULT EnablePDEV(
        PDEVOBJ       pdevobj,
        PWSTR         pPrinterName,
        ULONG         cPatterns,
        HSURF         *phsurfPatterns,
        ULONG         cjGdiInfo,
        GDIINFO       *pGdiInfo,
        ULONG         cjDevInfo,
        DEVINFO       *pDevInfo,
        DRVENABLEDATA *pded,
  [out] OUT PDEVOEM   *pDevOem
);

Paramètres

pdevobj

Pointeur fourni par l’appelant vers une structure DEVOBJ .

pPrinterName

Pointeur fourni par l’appelant vers une chaîne de texte représentant l’adresse logique de l’imprimante.

cPatterns

Valeur fournie par l’appelant représentant le nombre de poignées de surface de type HSURF contenues dans la mémoire tampon pointée par phsurfPatterns.

phsurfPatterns

Pointeur fourni par l’appelant vers une mémoire tampon suffisamment grande pour contenir le nombre cPatterns de poignées de surface de type HSURF. Les poignées représentent des modèles de remplissage de surface.

cjGdiInfo

Valeur fournie par l’appelant représentant la taille de la structure pointée vers pGdiInfo.

pGdiInfo

Pointeur fourni par l’appelant vers une structure GDIINFO .

cjDevInfo

Valeur fournie par l’appelant représentant la taille de la structure pointée par pDevInfo.

pDevInfo

Pointeur fourni par l’appelant vers une structure DEVINFO .

pded

Pointeur fourni par l’appelant vers une structure DRVENABLEDATA contenant les adresses des fonctions de raccordement DDI graphiques du pilote d’imprimante. Pour plus d'informations, consultez la section Notes qui suit.

[out] pDevOem

Reçoit un pointeur fourni par la méthode vers une structure PDEV privée. (Pour plus d’informations, consultez la section Remarques suivante.)

Valeur retournée

La méthode doit retourner l’une des valeurs suivantes.

Code de retour Description
S_OK
L’opération a réussi.
E_FAIL
L’opération a échoué
 

Si l’opération échoue, la méthode doit appeler SetLastError pour définir un code d’erreur.

Remarques

Un plug-in de rendu pour Unidrv doit implémenter la IPrintOemUni::EnablePDEV méthode .

La IPrintOemUni::EnablePDEV méthode effectue les mêmes types d’opérations que la fonction DrvEnablePDEV exportée par une DLL graphique d’imprimante. Son objectif est de permettre à un plug-in de rendu de créer sa propre structure PDEV. (Pour plus d’informations sur les structures PDEV, consultez Structures PDEV personnalisées.)

Si vous fournissez un plug-in de rendu qui exporte la méthode, la IPrintOemUni::EnablePDEV DLL graphique d’imprimante d’Undrv appelle la méthode à partir de sa fonction DrvEnablePDEV .

La IPrintOemUni::EnablePDEV méthode doit allouer une instance de sa structure PDEV privée, l’initialiser et retourner son adresse en tant que paramètre pDevOem de la méthode. D’autres méthodes de plug-in reçoivent l’adresse en tant que membre pdevOEM de la structure DEVOBJ .

Le membre pdevOEM de la structure DEVOBJ n’est pas utilisé avec la IPrintOemUni::EnablePDEV méthode .

Les structures pointées par les valeurs des paramètres phsurfPatterns, pGdiInfo et pDevInfo sont les mêmes que celles que reçoit la fonction DrvEnablePDEV d’Unidrv. Le plug-in de rendu peut modifier le contenu de la structure si nécessaire. Il peut fournir des modèles de remplissage de surface en obtenant des poignées de surface de type HSURF et en les plaçant dans la mémoire tampon pointée par phsurfPatterns. Les types de modèles de remplissage et l’ordre de gestion sont répertoriés dans la description de DrvEnablePDEV.

La structure DRVENABLEDATApointée vers pded contient les adresses des fonctions DDI graphiques fournies par la DLL graphique d’imprimante d’Unidrv. Vous êtes autorisé à fournir des fonctions de raccordement personnalisées dans votre plug-in pour ces fonctions graphiques DDI. Le contenu de la structure DRVENABLEDATA permet à vos fonctions de raccordement personnalisées de rappeler les fonctions DDI graphiques du pilote. Pour plus d’informations, consultez Fonctions DDI graphiques personnalisées.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête prcomoem.h (inclure Prcomoem.h)