Partager via


IPrintOemUI ::CommonUIProp, méthode (prcomoem.h)

La IPrintOemUI::CommonUIProp méthode permet à un plug-in d’interface utilisateur de modifier une page de feuille de propriétés d’imprimante existante.

Syntaxe

HRESULT CommonUIProp(
  DWORD         dwMode,
  POEMCUIPPARAM pOemCUIPParam
);

Paramètres

dwMode

Constante entière fournie par l’appelant indiquant quelle page de feuille de propriétés doit être modifiée. Les constantes suivantes sont valides.

Valeur Définition
OEMCUIP_DOCPROP La méthode est appelée pour modifier la page Layout, Paper/Quality ou Advanced de la feuille de propriétés du document.
OEMCUIP_PRNPROP La méthode est appelée pour modifier la page Paramètres de l’appareil de la feuille des propriétés de l’imprimante.

pOemCUIPParam

Pointeur fourni par l’appelant vers une structure OEMCUIPPARAM .

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é.
E_NOTIMPL
Cette méthode n'est pas implémentée.

Remarques

Quand la méthode d’un IPrintOemUI::CommonUIProp plug-in d’interface utilisateur est appelée, elle doit retourner des éléments d’option de feuille de propriétés personnalisés afin de modifier une page de feuille de propriétés d’imprimante existante.

La IPrintOemUI::CommonUIProp méthode est appelée par la DLL d’interface d’imprimante du pilote d’imprimante. La méthode doit fournir un tableau de structures OPTITEM décrivant des éléments de feuille de propriétés, ainsi qu’une fonction de rappel pour le traitement des modifications apportées par l’utilisateur aux valeurs d’option.

Vous devez vous attendre à ce que la méthode soit appelée deux fois pour chaque feuille de propriétés. La valeur du paramètre dwMode de la méthode indique si elle est appelée pour apporter des modifications à la feuille de propriétés de l’imprimante ou à la feuille de propriétés du document.

La première fois qu’elle est appelée, la méthode doit simplement retourner le nombre de structures OPTITEM à ajouter. Ce nombre doit être placé dans le membre cOEMOptItems de la structure OEMCUIPPARAM. La DLL d’interface d’imprimante alloue ensuite suffisamment de mémoire pour stocker le nombre spécifié d’OPTITEMs, puis appelle IPrintOemUI::CommonUIProp à nouveau.

La deuxième fois qu’elle est appelée, la IPrintOemUI::CommonUIProp méthode doit effectuer les opérations suivantes :

  • Remplissez le tableau de structures OPTITEM fourni par le pilote avec des descriptions d’options. Ce tableau est pointé par le membre pOEMOptItems de la structure OEMCUIPPARAM, et le nombre d’éléments de tableau alloués est contenu dans le membre cOEMOptItems de la structure. (Pour plus d’informations sur la spécification des valeurs de membre OPTITEM, consultez la description du membre pOEMOptItems de la structure OEMCUIPPARAM.
  • Retournez le nombre de structures ajoutées au tableau OPTITEM en le plaçant dans le membre cOEMOptItems de la structure OEMCUIPPARAM.
  • Retourne l’adresse d’une fonction de rappel dans le membre OEMCUIPCallback de la structure OEMCUIPPARAM . Cette fonction de rappel est appelée lorsqu’un utilisateur modifie la page de la feuille de propriétés. La fonction de rappel doit être de type OEMCUIPCALLBACK.
  • Si vous le souhaitez, retournez l’adresse d’une structure de données privée en la plaçant dans le membre pOEMUserData de la structure OEMCUIPPARAM. La fonction de rappel spécifiée par le membre OEMCUIPCallback de la structure reçoit l’adresse de la structure OEMCUIPPARAM en tant que paramètre d’entrée et peut donc obtenir l’adresse des données privées.

    L’espace pour la structure de données privée doit être alloué en appelant la fonction Microsoft Windows SDK HeapAlloc, à l’aide du handle contenu dans le membre hOEMHeap de la structure OEMCUIPPARAM.

Si IPrintOemUI::CommonUIProp les méthodes sont exportées par plusieurs plug-ins d’interface utilisateur, les méthodes sont appelées dans l’ordre dans lequel les plug-ins sont spécifiés pour l’installation.

Pour plus d’informations, consultez Modification d’une page feuille de propriétés Driver-Supplied.

Configuration requise

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