Partager via


DrvDeviceCapabilities, fonction (winddiui.h)

La dll d’interface d’imprimante DrvDeviceCapabilities fonction retourne des informations demandées sur les fonctionnalités d’une imprimante.

Syntaxe

DWORD DrvDeviceCapabilities(
                 HANDLE   hPrinter,
  [in]           PWSTR    pszDeviceName,
                 WORD     Capability,
  [out]          PVOID    pOutput,
  [in, optional] PDEVMODE pDevmode
);

Paramètres

hPrinter

Handle d’imprimante fourni par l’appelant.

[in] pszDeviceName

Pointeur fourni par l’appelant vers une chaîne de nom d’imprimante.

Capability

Indicateur de bits fourni par l’appelant indiquant les informations demandées. Il peut s’agir de l’un des indicateurs répertoriés dans le tableau suivant. (Les indicateurs sont définis dans le fichier d’en-tête Wingdi.h.)

Drapeau Définition
DC_BINADJUST Non utilisé pour les systèmes d’exploitation basés sur NT.
DC_BINNAMES Le paramètre pOutput pointe vers une mémoire tampon que la fonction doit remplir avec un tableau de mémoires tampons de chaîne, chacune 24 caractères de longueur. Chaque mémoire tampon de chaîne dans le tableau doit contenir une chaîne à caractères larges et terminée par NULL spécifiant le nom d’une corbeille source de papier. La valeur de retour de la fonction doit être le nombre d’éléments dans le tableau retourné. Si pOutput est NULL, la fonction doit simplement retourner le nombre d’éléments de tableau requis.
DC_BINS Le paramètre pOutput pointe vers une mémoire tampon que la fonction doit remplir avec un tableau WORD. Chaque élément de tableau doit contenir une constante préfixée DMBIN (ou une valeur personnalisée) représentant une corbeille source de papier prise en charge. La valeur de retour de la fonction doit être le nombre d’éléments dans le tableau retourné. Si pOutput est NULL, la fonction doit simplement retourner le nombre d’éléments de tableau requis.
DC_COLLATE Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit être 1 si l’imprimante prend en charge la fusion ; sinon, la valeur de retour doit être égale à zéro.
DC_COLORDEVICE Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit être 1 si l’imprimante prend en charge l’impression de couleur ; sinon, la valeur de retour doit être égale à zéro.
DC_COPIES Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit être le nombre maximal de copies que l’imprimante peut prendre en charge.
DC_DATATYPE_PRODUCED Non utilisé pour les systèmes d’exploitation basés sur NT.
DC_DRIVER Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit être la dmDriverVersion membre de la structure interne du pilote [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew).
DC_DUPLEX Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit être 1 si l’imprimante prend en charge l’impression duplex ; sinon, la valeur de retour doit être égale à zéro.
DC_EMF_COMPLIANT Non utilisé pour les systèmes d’exploitation basés sur NT.
DC_ENUMRESOLUTIONS Le paramètre pOutput pointe vers une mémoire tampon que la fonction doit remplir avec un tableau LONG. Pour chaque résolution prise en charge par l’imprimante, la fonction doit retourner deux mots longs (un pour la dimension x et l’autre pour la dimension y) de la résolution, en points par pouce. La valeur de retour de la fonction doit être le nombre de résolutions prises en charge. Si pOutput est NULL, la fonction doit simplement retourner le nombre de résolutions prises en charge.
DC_EXTRA Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit être la dmDriverExtra membre de la structure interne du pilote [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew).
DC_FIELDS Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit être la dmFields membre de la structure interne du pilote [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew). Le membre dmFields indique quels membres de la partie indépendante de l’appareil de la structure DEVMODEW sont pris en charge par le pilote d’imprimante.
DC_FILEDEPENDENCIES Le paramètre pOutput pointe vers une mémoire tampon que la fonction doit remplir avec un tableau de mémoires tampons de chaîne, chacune 64 caractères de longueur. Chaque mémoire tampon de chaîne dans le tableau doit contenir une chaîne à caractères larges et terminée par NULL spécifiant le nom d’un fichier qui doit être installé avec le pilote. La valeur de retour de la fonction doit être le nombre d’éléments dans le tableau retourné. Si pOutput est NULL, la fonction doit simplement retourner le nombre d’éléments de tableau requis.
DC_MANUFACTURER Non utilisé pour les systèmes d’exploitation basés sur NT.
DC_MAXEXTENT Le paramètre pOutput n’est pas utilisé. La fonction doit retourner une structure POINTS (décrite dans la documentation du Kit de développement logiciel (SDK) Microsoft Windows). La structure doit contenir les valeurs maximales autorisées pour les membres dmPaperWidth (x dimension) et dmPaperLength (y dimension) de la structure DEVMODEW de l’imprimante.
DC_MEDIAREADY Le paramètre pOutput pointe vers une mémoire tampon que la fonction doit remplir avec un tableau de mémoires tampons de chaîne, chacune 64 caractères de longueur. Chaque mémoire tampon de chaîne du tableau doit contenir une chaîne à caractères larges et terminée par NULL spécifiant le nom d’un formulaire papier disponible pour une utilisation. La valeur de retour de la fonction doit être le nombre d’éléments dans le tableau retourné. Si pOutput est NULL, la fonction doit simplement retourner le nombre d’éléments de tableau requis.
DC_MEDIATYPENAMES Le paramètre pOutput pointe vers une mémoire tampon que la fonction doit remplir avec un tableau de mémoires tampons de chaîne, chacune 64 caractères de longueur. Chaque mémoire tampon de chaîne dans le tableau doit contenir une chaîne à caractères larges et terminée par NULL spécifiant le nom d’un type de média pris en charge. La valeur de retour de la fonction doit être le nombre d’éléments dans le tableau retourné. Si pOutput est NULL, la fonction doit simplement retourner le nombre d’éléments de tableau requis.
DC_MEDIATYPES Le paramètre pOutput pointe vers une mémoire tampon que la fonction doit remplir avec un tableau DWORD. Chaque élément de tableau doit contenir une constante préfixée DMMEDIA (voir la structure [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew) ou une valeur personnalisée représentant un type de média pris en charge. La valeur de retour de la fonction doit être le nombre d’éléments dans le tableau retourné. Si pOutput est NULL, la fonction doit simplement retourner le nombre d’éléments de tableau requis.
DC_MINEXTENT Le paramètre pOutput n’est pas utilisé. La fonction doit retourner une structure POINTS (décrite dans la documentation du Kit de développement logiciel (SDK) Windows). La structure doit contenir les valeurs autorisées minimales pour les membres dmPaperWidth (x dimension) et dmPaperLength (y dimension) de la structure DEVMODEW de l’imprimante.
DC_MODEL Non utilisé pour les systèmes d’exploitation basés sur NT.
DC_NUP Le paramètre pOutput pointe vers une mémoire tampon que la fonction doit remplir avec un tableau DWORD. Chaque élément de tableau doit contenir un entier représentant une option N-up (autrement dit, chaque entier doit représenter un nombre pris en charge de pages de document par page physique). La valeur de retour de la fonction doit être le nombre d’éléments dans le tableau retourné. Si pOutput est NULL, la fonction doit simplement retourner le nombre d’éléments de tableau requis.
DC_ORIENTATION Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit être le nombre de degrés de rotation requis pour produire l’orientation paysage à partir de l’orientation portrait. La valeur zéro indique que l’orientation paysage n’est pas prise en charge.
DC_PAPERNAMES Le paramètre pOutput pointe vers une mémoire tampon que la fonction doit remplir avec un tableau de mémoires tampons de chaîne, chacune 64 caractères de longueur. Chaque mémoire tampon de chaîne dans le tableau doit contenir une chaîne à caractères larges et terminée par NULL spécifiant le nom d’un formulaire papier. La valeur de retour de la fonction doit être le nombre d’éléments dans le tableau retourné. Si pOutput est NULL, la fonction doit simplement retourner le nombre d’éléments de tableau requis.
DC_PAPERS Le paramètre pOutput pointe vers une mémoire tampon que la fonction doit remplir avec un tableau WORD. Chaque élément de tableau doit contenir une constante préfixée DMPAPER (ou une valeur personnalisée) représentant un formulaire papier pris en charge. La valeur de retour de la fonction doit être le nombre d’éléments dans le tableau retourné. Si pOutput est NULL, la fonction doit simplement retourner le nombre d’éléments de tableau requis.
DC_PAPERSIZE Le paramètre pOutput pointe vers une mémoire tampon que la fonction doit remplir avec un tableau POINT. Chaque élément de tableau doit contenir les dimensions x et y dimensions du format papier d’un formulaire, en 0,1 mm, en orientation portrait. La valeur de retour de la fonction doit être le nombre d’éléments dans le tableau retourné. Si pOutput est NULL, la fonction doit simplement retourner le nombre d’éléments de tableau requis.
DC_PERSONALITY Le paramètre pOutput pointe vers une mémoire tampon que la fonction doit remplir avec un tableau de mémoires tampons de chaîne, chacune 32 caractères de longueur. Chaque mémoire tampon de chaîne dans le tableau doit contenir une chaîne à caractères larges, terminée par NULL, spécifiant le langage de description de l’imprimante pris en charge par l’imprimante (par exemple, L"HP-GL/2 »). La valeur de retour de la fonction doit être le nombre d’éléments dans le tableau retourné. Si pOutput est NULL, la fonction doit simplement retourner le nombre d’éléments de tableau requis.
DC_PRINTERMEM Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit être un entier représentant la quantité de mémoire d’imprimante disponible, en kilo-octets.
DC_PRINTRATE Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit être un entier représentant le taux d’impression, dans les unités spécifiées pour DC_PRINTRATEUNIT.
DC_PRINTRATEPPM Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit être un entier représentant le taux d’impression, en pages par minute.
DC_PRINTRATEUNIT Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit identifier les unités utilisées pour spécifier la valeur retournée pour DC_PRINTRATE. L’une des constantes suivantes doit être spécifiée : PRINTRATEUNIT_PPM - pages/min. PRINTRATEUNIT_CPS - chars./s. PRINTRATEUNIT_LPM - lignes/min. PRINTRATEUNIT_IPM - pouces/min.
DC_SIZE Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit être la dmSize membre de la structure interne du pilote [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew).
DC_STAPLE Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit être TRUE si l’imprimante prend en charge l’agrafage et FALSE si l’imprimante ne prend pas en charge l’agrafage.
DC_TRUETYPE Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction peut être zéro, une ou plusieurs des indicateurs suivants : DCTT_BITMAP : l’appareil peut imprimer des polices TrueType en tant que graphiques. DCTT_DOWNLOAD : l’appareil peut accepter les polices TrueType téléchargées. DCTT_DOWNLOAD_OUTLINE : (Windows 95/98/Me uniquement) L’appareil peut télécharger les polices TrueType hiérarchiques. DCTT_SUBDEV : l’appareil peut remplacer les polices d’appareil pour les polices TrueType.
DC_VERSION Le paramètre pOutput n’est pas utilisé. La valeur de retour de la fonction doit être la dmSpecVersion membre de la structure interne du pilote [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew).

[out] pOutput

Pointeur fourni par l’appelant vers une mémoire tampon pour recevoir des informations fournies par la fonction. L’utilisation de la mémoire tampon dépend de la valeur reçue pour le paramètre fonctionnalité.

[in, optional] pDevmode

Pointeur fourni par l’appelant vers une structure DEVMODEW qui décrit les caractéristiques actuelles du travail d’impression. Si ce paramètre est null, DrvDeviceCapabilities récupère les valeurs d’initialisation par défaut actuelles pour le pilote d’imprimante spécifié, par exemple la structure DEVMODEW par défaut de l’utilisateur de la file d’attente d’impression.

Valeur de retour

La valeur de retour de la fonction dépend de la valeur reçue pour le paramètre de capacité. Si la valeur fonctionnalité reçue représente une fonctionnalité que le pilote ne prend pas en charge ou si une erreur est rencontrée, la fonction doit retourner GDI_ERROR.

Exigences

Exigence Valeur
plateforme cible Bureau
d’en-tête winddiui.h (include Winddiui.h)