Share via


Méthode IPrintCoreHelperUni ::EnumConstrainedOptions (prcomoem.h)

La méthode IPrintCoreHelperUni ::EnumConstrainedOptions fournit une liste de toutes les options qui sont limitées dans une fonctionnalité particulière, en fonction des paramètres actuels.

Syntaxe

HRESULT EnumConstrainedOptions(
  [in, optional] IN const DEVMODE *pDevmode,
  [in]           IN DWORD         cbSize,
  [in]           IN PCSTR         pszFeatureKeyword,
  [out]          OUT PCSTR * []   pConstrainedOptionList,
  [out]          OUT DWORD        *pdwNumOptions
);

Paramètres

[in, optional] pDevmode

Pointeur vers une structure DEVMODEW . Si ce pointeur est fourni, IPrintCoreHelperUni ::EnumConstrainedOptions doit utiliser la structure DEVMODEW pointée par pDevmode au lieu de la structure DEVMODEW par défaut ou actuelle. Si cette méthode est appelée à partir du fournisseur de plug-in ou de IPrintOemUni ::D evMode, ce paramètre est obligatoire. Dans la plupart des autres situations, le paramètre doit avoir la valeur NULL. Lorsque le pilote principal définit pDevmode sur NULL, il modifie son état interne plutôt que celui de la structure DEVMODEW transmise. Cela est requis lors d’opérations telles que le remplacement complet de l’interface utilisateur, où la structure DEVMODEW retournée par un DDI, comme DrvDocumentPropertySheets, est en cours de maintenance par le module d’interface utilisateur du pilote principal.

[in] cbSize

Taille, en octets, de la structure DEVMODEW vers laquelle pointe le paramètre pDevmode .

[in] pszFeatureKeyword

Chaîne de caractères ANSI qui contient le nom de la fonctionnalité.

[out] pConstrainedOptionList

Pointeur vers un tableau de chaînes de caractères ANSI. Lorsque IPrintCoreHelperUni ::EnumConstrainedOptions retourne, ces chaînes contiennent les noms de toutes les options qui sont limitées dans la fonctionnalité spécifiée. L’appelant n’est pas responsable de la libération du tableau ou des chaînes individuelles dans le tableau.

[out] pdwNumOptions

Pointeur vers une variable qui reçoit le nombre d’options contraintes dans le tableau vers lequel pointe le paramètre pConstrainedOptionList .

Valeur retournée

IPrintCoreHelperUni ::EnumConstrainedOptions doit retourner l’une des valeurs suivantes.

Code de retour Description
S_OK Les options contraintes ont été définies pour la fonctionnalité spécifiée.
E_FAIL L’appelant a fourni des informations qui ont donné lieu à une demande non valide, comme une demande pour une fonctionnalité qui n’existe pas.
E_INVALIDARG Un ou plusieurs des arguments n’étaient pas valides. Cette valeur peut signifier que la fonctionnalité n’est pas prise en charge.
E_OUTOFMEMORY Il n’y avait pas assez de mémoire pour créer le tableau d’options ou le pilote principal n’a pas pu traiter la demande en raison d’un manque de mémoire.
E_UNEXPECTED ou d’autres échecs non répertoriés ici Une condition inattendue s'est produite. Le pilote principal est probablement dans un état non valide. L’appelant doit se quitter avec un code d’échec.

Configuration requise

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

Voir aussi

IPrintCoreHelperUni

IPrintCoreHelperUni ::EnumOptions