Méthode IPrintCoreHelper ::GetOption (prcomoem.h)
La méthode IPrintCoreHelper ::GetOption obtient une option spécifiée pour une fonctionnalité donnée.
Syntaxe
HRESULT GetOption(
[in] const DEVMODE *pDevmode,
[in] DWORD cbSize,
[in] PCSTR pszFeatureRequested,
[out] PCSTR *ppszOption
);
Paramètres
[in] pDevmode
Pointeur vers une structure DEVMODEW . Si ce pointeur est fourni, IPrintCoreHelper ::GetOption 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 à partir de IPrintOemPS ::D evMode ou IPrintOemUni ::D evMode, ce paramètre est obligatoire. Dans la plupart des autres situations, le paramètre doit être NULL. Lorsque le pilote principal définit pDevmode sur NULL, il modifie son état interne plutôt que celui de la structure DEVMODEW passée. Cela est nécessaire lors d’opérations telles que le remplacement complet de l’interface utilisateur, où la structure DEVMODEW retournée par un DDI, telle que DrvDocumentPropertySheets, est prise en charge par le module d’interface utilisateur du pilote principal.
[in] cbSize
Taille, en octets, de la structure DEVMODEW pointée par le paramètre pDevmode .
[in] pszFeatureRequested
Pointeur vers la chaîne ANSI qui contient le nom de la fonctionnalité tel qu’il apparaît dans le fichier GPD.
[out] ppszOption
Pointeur vers une variable qui contient l’adresse d’une chaîne ANSI. Lorsque IPrintCoreHelper ::GetOption est retourné, la chaîne doit contenir les mot clé pour l’option actuellement sélectionnée telle qu’elle apparaît dans le fichier de configuration. L’appelant ne doit pas modifier cette chaîne et ne doit pas libérer la mémoire associée à cette chaîne.
Valeur retournée
IPrintCoreHelper ::GetOption doit retourner l’une des valeurs suivantes.
Code de retour | Description |
---|---|
|
La méthode a lu l’option pour la fonctionnalité spécifiée. |
|
L’appelant a fourni des informations qui ont donné lieu à une demande non valide. Par exemple, la fonctionnalité demandée n’existe pas. |
|
Les arguments n’étaient pas valides. Cette valeur peut signifier que la fonctionnalité n’est pas prise en charge ou qu’un trop grand nombre d’options ont été demandées pour la fonctionnalité. |
|
Le pilote principal n’a pas pu traiter la demande, car la mémoire était insuffisante. |
|
Le pilote principal semble être dans un état non valide. L’appelant doit retourner un code d’échec. |
Remarques
IPrintCoreHelper ::GetOption ne peut pas être utilisé pour les fonctionnalités qui permettent de définir simultanément plusieurs options.
Les mots clés de fonctionnalité sont définis dans les fichiers GPD et PPD. En outre, les pilotes Unidrv et Pscript5 prennent en charge plusieurs mots clés réservés pour les options stockées dans leurs structures DEVMODEW privées.
L’appelant ne doit pas libérer la chaîne pointée par ppszOption et ne doit pas modifier la chaîne de quelque manière que ce soit.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | prcomoem.h (include Prcomoem.h) |