DeviceCapabilitiesA, fonction (wingdi.h)
La fonction DeviceCapabilities récupère les fonctionnalités d’un pilote d’imprimante.
Syntaxe
int DeviceCapabilitiesA(
[in] LPCSTR pDevice,
[in] LPCSTR pPort,
[in] WORD fwCapability,
[out] LPSTR pOutput,
[in] const DEVMODEA *pDevMode
);
Paramètres
[in] pDevice
Pointeur vers une chaîne terminée par null qui contient le nom de l’imprimante. Notez qu’il s’agit du nom de l’imprimante, et non du pilote d’imprimante.
[in] pPort
Pointeur vers une chaîne terminée par null qui contient le nom du port auquel l’appareil est connecté, tel que LPT1.
[in] fwCapability
Fonctionnalités à interroger. Ce paramètre peut être l’une des valeurs suivantes.
Valeur | Signification |
---|---|
|
Récupère les noms des bacs de papier de l’imprimante. La mémoire tampon pOutput reçoit un tableau de mémoires tampons de chaîne. Chaque mémoire tampon de chaîne est de 24 caractères et contient le nom d’une corbeille de papier. La valeur de retour indique le nombre d’entrées dans le tableau. Les chaînes de nom sont terminées par null, sauf si le nom est de 24 caractères. Si pOutput est NULL, la valeur de retour est le nombre d’entrées bin requises. |
|
Récupère la liste des bacs de papier disponibles. La mémoire tampon pOutput |
|
Si l’imprimante prend en charge la fusion, la valeur de retour est 1 ; sinon, la valeur de retour est égale à zéro. Le paramètre pOutput n’est pas utilisé. |
|
Si l’imprimante prend en charge l’impression de couleur, la valeur de retour est 1 ; sinon, la valeur de retour est égale à zéro. Le paramètre pOutput n’est pas utilisé. |
|
Retourne le nombre de copies que l’appareil peut imprimer. |
|
Retourne le numéro de version du pilote d’imprimante. |
|
Si l’imprimante prend en charge l’impression duplex, la valeur de retour est 1 ; sinon, la valeur de retour est égale à zéro. Le paramètre pOutput n’est pas utilisé. |
|
Récupère une liste des résolutions prises en charge par l’imprimante. La mémoire tampon pOutput |
|
Retourne le nombre d’octets requis pour la partie spécifique de l’appareil de la structure DEVMODE pour le pilote d’imprimante. |
|
Retourne le |
|
Récupère les noms des fichiers supplémentaires qui doivent être chargés lorsqu’un pilote est installé. La mémoire tampon pOutput reçoit un tableau de mémoires tampons de chaîne. Chaque mémoire tampon de chaîne est de 64 caractères et contient le nom d’un fichier. La valeur de retour indique le nombre d’entrées dans le tableau. Les chaînes de nom sont terminées par null, sauf si le nom est de 64 caractères. Si pOutput est NULL, la valeur de retour correspond au nombre de fichiers. |
|
Retourne la taille maximale du papier que les membres |
|
Récupère les noms des formulaires papier actuellement disponibles. La mémoire tampon pOutput reçoit un tableau de mémoires tampons de chaîne. Chaque mémoire tampon de chaîne est de 64 caractères et contient le nom d’un formulaire papier. La valeur de retour indique le nombre d’entrées dans le tableau. Les chaînes de nom sont terminées par null, sauf si le nom est de 64 caractères. Si pOutput est NULL, la valeur de retour correspond au nombre de formulaires papier. |
|
Récupère les noms des types de supports pris en charge. La mémoire tampon pOutput reçoit un tableau de mémoires tampons de chaîne. Chaque mémoire tampon de chaîne est de 64 caractères et contient le nom d’un type de média pris en charge. La valeur de retour indique le nombre d’entrées dans le tableau. Les chaînes sont terminées par null, sauf si le nom est long de 64 caractères. Si pOutput est NULL, la valeur de retour correspond au nombre de noms de types de média requis. |
|
Récupère une liste des types de supports pris en charge. La mémoire tampon pOutput reçoit un tableau de valeurs DWORD qui indiquent les types de supports pris en charge. La valeur de retour indique le nombre d’entrées dans le tableau. Pour obtenir la liste des valeurs de tableau possibles, consultez la description de la |
|
Renvoie le format de papier minimal que les membres |
|
Retourne la relation entre les orientations portrait et paysage pour un appareil, en termes de nombre de degrés de rotation de l’orientation portrait pour produire une orientation paysage. La valeur de retour peut être l’une des suivantes :
|
|
Récupère un tableau d’entiers qui indiquent que l’imprimante peut imprimer plusieurs pages de documents par page imprimée. La mémoire tampon pOutput reçoit un tableau de valeurs de DWORD. Chaque valeur représente un nombre pris en charge de pages de document par page imprimée. La valeur de retour indique le nombre d’entrées dans le tableau. Si pOutput est NULL, la valeur de retour indique le nombre requis d’entrées dans le tableau. |
|
Récupère une liste de noms de papier pris en charge (par exemple, Lettre ou Juridique). La mémoire tampon pOutput reçoit un tableau de mémoires tampons de chaîne. Chaque mémoire tampon de chaîne est de 64 caractères et contient le nom d’un formulaire papier. La valeur de retour indique le nombre d’entrées dans le tableau. Les chaînes de nom sont terminées par null, sauf si le nom est de 64 caractères. Si pOutput est NULL, la valeur de retour correspond au nombre de formulaires papier. |
|
Récupère une liste de tailles de papier prises en charge. La mémoire tampon pOutput reçoit un tableau de valeurs WORD qui indiquent les tailles de papier disponibles pour l’imprimante. La valeur de retour indique le nombre d’entrées dans le tableau. Pour obtenir la liste des valeurs de tableau possibles, consultez la description de la dmPaperSize membre de la structure DEVMODE. Si pOutput est NULL, la valeur de retour indique le nombre requis d’entrées dans le tableau. |
|
Récupère les dimensions, en dixièmes de millimètres, de chaque taille de papier prise en charge. La mémoire tampon pOutput |
|
Récupère la liste des langues de description de l’imprimante prises en charge par l’imprimante. La mémoire tampon pOutput reçoit un tableau de mémoires tampons de chaîne. Chaque mémoire tampon est de 32 caractères et contient le nom d’une langue de description d’imprimante. La valeur de retour indique le nombre d’entrées dans le tableau. Les chaînes de nom sont terminées par null, sauf si le nom est de 32 caractères. Si pOutput est NULL, la valeur de retour indique le nombre requis d’entrées de tableau. |
|
La valeur de retour correspond à la quantité de mémoire d’imprimante disponible, en kilo-octets. Le paramètre pOutput n’est pas utilisé. |
|
La valeur de retour indique le taux d’impression de l’imprimante. La valeur retournée pour DC_PRINTRATEUNIT indique les unités de la valeur DC_PRINTRATE. Le paramètre pOutput n’est pas utilisé. |
|
La valeur de retour indique le taux d’impression de l’imprimante, en pages par minute. Le paramètre pOutput n’est pas utilisé. |
|
La valeur de retour est l’une des valeurs suivantes qui indiquent les unités de taux d’impression pour la valeur retournée pour l’indicateur de DC_PRINTRATE. Le paramètre pOutput n’est pas utilisé.
|
|
Retourne le dmSize membre de la structure devmode du pilote d’imprimante. |
|
Si l’imprimante prend en charge l’agrafage, la valeur de retour est une valeur différente de zéro ; sinon, la valeur de retour est égale à zéro. Le paramètre pOutput n’est pas utilisé. |
|
Récupère les capacités du pilote pour utiliser des polices TrueType. Pour
|
|
Retourne la version de spécification à laquelle le pilote d’imprimante est conforme. |
[out] pOutput
Pointeur vers un tableau. Le format du tableau dépend du paramètre fwCapability. Consultez chaque fonctionnalité ci-dessus pour savoir ce qui est retourné si pOutput est NULL.
[in] pDevMode
Pointeur vers une structure DEVMODE
Valeur de retour
Si la fonction réussit, la valeur de retour dépend du paramètre fwCapability paramètre. Une valeur de retour de zéro indique généralement que, même si la fonction s’est terminée correctement, il y a eu un certain type d’échec, comme une fonctionnalité qui n’est pas prise en charge. Pour plus d’informations, consultez les descriptions des valeurs fwCapability.
Si la fonction retourne -1, cela peut signifier que la fonctionnalité n’est pas prise en charge ou qu’il y a eu une défaillance générale de la fonction.
Remarques
Si un pilote d’imprimante prend en charge les fonctionnalités d’appareil personnalisées, le pilote doit appeler la fonction SetPrinterData pour chaque fonctionnalité personnalisée. La fonction SetPrinterData ajoute les données d’imprimante appropriées au système d’impression, ce qui permet aux applications 32 bits d’accéder aux fonctionnalités personnalisées sur les installations Windows 64 bits.
Pour chaque fonctionnalité personnalisée, vous devez d’abord ajouter des données d’imprimante qui décrivent le type de la fonctionnalité. Pour ce faire, lorsque vous appelez SetPrinterData, définissez la chaîne pValueName sur CustomDeviceCapabilityType_Xxx, où « Xxx » est la représentation hexadécimale de la fonctionnalité. Par exemple, vous pouvez avoir « CustomDeviceCapabilityType_1234 ». Les données de Registre que vous définissez doivent être du type REG_DWORD, et vous devez définir sa valeur sur l’une des valeurs suivantes :
- 0, si la fonctionnalité personnalisée est un DWORD
- 1, si la fonctionnalité personnalisée est une mémoire tampon d’octets
- 2, si la fonctionnalité personnalisée est un tableau d’éléments
Note
L’en-tête wingdi.h définit DeviceCapabilities comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
serveur minimum pris en charge | Windows 2000 Server [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | wingdi.h (include Windows.h) |
bibliothèque | WinSpool.lib |
DLL | WinSpool.drv |