Partager via


AddPrinterDriver, fonction

La fonction AddPrinterDriver installe un pilote d’imprimante local ou distant et associe les fichiers de configuration, de données et de pilotes.

Pour plus de flexibilité dans l’installation ou la mise à niveau des pilotes d’imprimante, utilisez la fonction AddPrinterDriverEx , car elle permet une mise à niveau stricte, une rétrogradation stricte, la copie de fichiers plus récents uniquement et la copie de tous les fichiers (quels que soient les horodatages des fichiers).

Notes

L’installation d’un pilote d’imprimante sans package de pilotes n’est plus recommandée. Utilisez Plutôt InstallPrinterDriverFromPackage .

Syntaxe

BOOL AddPrinterDriver(
  _In_ LPTSTR pName,
  _In_ DWORD  Level,
  _In_ LPBYTE pDriverInfo
);

Paramètres

pName [in]

Pointeur vers une chaîne terminée par null qui spécifie le nom du serveur sur lequel le pilote doit être installé.

Si pName a la valeur NULL, le pilote est installé localement.

Niveau [in]

Version de la structure vers laquelle pDriverInfo pointe.

Cette valeur peut être 2, 3, 4, 6 ou 8.

pDriverInfo [in]

Pointeur vers une structure contenant des informations sur le pilote d’imprimante. Cela dépend de la valeur de Level.

Valeur Structure du lecteur d’imprimante
2 DRIVER_INFO_2
3 DRIVER_INFO_3
4 DRIVER_INFO_4
6 DRIVER_INFO_6
8 DRIVER_INFO_8

Si le membre pEnvironment de la structure pointée par pDriverInfo est NULL, l’environnement actuel de l’appelant/client (et non du serveur de destination/serveur) est utilisé.

Valeur retournée

Si la fonction réussit, la valeur de retour est une valeur différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro.

Notes

Notes

Il s’agit d’une fonction bloquante ou synchrone qui peut ne pas être retournée immédiatement. La rapidité avec laquelle cette fonction retourne dépend de facteurs d’exécution tels que l’status réseau, la configuration du serveur d’impression et les facteurs d’implémentation du pilote d’imprimante qui sont difficiles à prédire lors de l’écriture d’une application. L’appel de cette fonction à partir d’un thread qui gère l’interaction avec l’interface utilisateur peut donner l’impression que l’application ne répond pas.

L’appelant doit avoir le SeLoadDriverPrivilege.

Avant qu’une application appelle la fonction AddPrinterDriver , tous les fichiers requis par le pilote doivent être copiés dans le répertoire du pilote d’imprimante du système. Une application peut récupérer le nom de ce répertoire en appelant la fonction GetPrinterDriverDirectory .

Une application peut déterminer quels pilotes d’imprimante sont actuellement installés en appelant la fonction EnumPrinterDrivers .

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge
Windows 2000 Server [applications de bureau uniquement]
En-tête
Winspool.h (inclure Windows.h)
Bibliothèque
Winspool.lib
DLL
Winspool.drv
Noms Unicode et ANSI
AddPrinterDriverW (Unicode) et AddPrinterDriverA (ANSI)

Voir aussi

Impression

Fonctions API du spouleur d’impression

AddPrinterDriverEx

DRIVER_INFO_2

DRIVER_INFO_3

DRIVER_INFO_4

DRIVER_INFO_6

EnumPrinterDrivers

GetPrinterDriverDirectory