Méthode IPrintCorePS2 ::EnumFeatures (prcomoem.h)
La IPrintCorePS2::EnumFeatures
méthode énumère les fonctionnalités disponibles d’une imprimante.
Syntaxe
HRESULT EnumFeatures(
[in] PDEVOBJ pdevobj,
[in] DWORD dwFlags,
[out] PZZSTR pmszFeatureList,
[in] DWORD cbSize,
[out] PDWORD pcbNeeded
);
Paramètres
[in] pdevobj
Pointeur vers une structure DEVOBJ .
[in] dwFlags
Est réservé et doit être défini sur zéro.
[out] pmszFeatureList
Pointeur vers une mémoire tampon fournie par l’appelant qui reçoit une liste délimitée par la valeur Null de mots clés de fonctionnalité au format MULTI_SZ. La liste se termine par deux caractères null.
Définissez ce paramètre sur NULL pour simplement interroger la taille (*pcbNeededed) de la liste de fonctionnalités sans que la liste soit remplie.
[in] cbSize
Spécifie la taille, en octets, de la mémoire tampon pointée vers pmszFeatureList.
[out] pcbNeeded
Pointeur vers un emplacement de mémoire qui reçoit la taille réelle, en octets, des données demandées.
Valeur retournée
Cette méthode doit retourner l’une des valeurs suivantes.
Code de retour | Description |
---|---|
|
S_OK |
|
La valeur dans cbSize était inférieure au nombre d’octets à écrire dans la mémoire tampon de sortie (la mémoire tampon pointée par pmszFeatureList).
La méthode a été appelée avec pmszFeatureList défini sur NULL. |
|
Le paramètre pdevobj a pointé vers un objet de contexte de pilote non valide. |
|
La méthode a échoué. |
Remarques
les fonctionnalités d’imprimante-sticky (voir Remplacement Driver-Supplied pages de feuille de propriétés), telles que celles qui déterminent la mémoire installable et la présence d’accessoires facultatifs, sont incluses dans la liste des fonctionnalités mot clé, qui s’affiche dans la mémoire tampon de sortie pointée par pmszFeatureList. Pour Pscript5, l’attribut de fonctionnalité OpenGroupType est défini sur « InstallableOptions ».
Pour réduire la nécessité d’effectuer deux appels par accès aux données, transmettez à la méthode une mémoire tampon de sortie d’une taille fixe (1 Ko, par exemple), puis case activée la valeur de retour de la fonction. Si la méthode retourne S_OK, la mémoire tampon contient déjà les données intéressantes. Si la méthode retourne E_OUTOFMEMORY, la valeur dans *pcbNeeded est la taille de mémoire tampon nécessaire pour contenir les données intéressantes. L’appelant doit ensuite allouer une mémoire tampon de cette plus grande taille et procéder à un deuxième appel à la méthode.
Cette méthode est prise en charge pour tout plug-in de rendu Pscript5.
Pour plus d’informations, consultez Utilisation d’EnumFeatures.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | prcomoem.h (inclure Prcomoem.h) |