UploadPrinterDriverPackage fonction)

Charge un pilote d’imprimante sur le magasin de pilotes du serveur d’impression afin qu’il puisse être installé en appelant InstallPrinterDriverFromPackage.

Syntaxe

HRESULT UploadPrinterDriverPackage(
  _In_    LPCTSTR pszServer,
  _In_    LPCTSTR pszInfPath,
  _In_    LPCTSTR pszEnvironment,
  _In_    DWORD   dwFlags,
  _In_    HWND    hwnd,
  _Out_   LPTSTR  pszDestInfPath,
  _Inout_ PULONG  pcchDestInfPath
);

Paramètres

pszServer [ dans]

Pointeur vers une chaîne constante, se terminant par un caractère null qui spécifie le nom du serveur d’impression. Utilisez la valeur null si le serveur est l’ordinateur local.

pszInfPath [ dans]

Pointeur vers une chaîne constante, se terminant par un caractère null qui spécifie le chemin d’accès source au fichier. inf du pilote.

pszEnvironment [ dans]

Pointeur vers une chaîne constante, se terminant par un caractère null qui spécifie l’architecture du processeur du serveur (par exemple, Windows NT x86). Il peut s’agir de la valeur null.

dwFlags [ dans]

Il peut s’agir de l’une des valeurs suivantes :

Valeur Signification
UPDP_SILENT_UPLOAD
L’interface utilisateur ne sera pas affichée pendant le téléchargement.
UPDP_UPLOAD_ALWAYS
Les fichiers sont téléchargés même si le package est déjà dans le magasin de pilotes du serveur.
UPDP_CHECK_DRIVERSTORE
Le magasin de pilotes du serveur sera vérifié avant le chargement pour voir si le package existe déjà. Ce paramètre est ignoré si UPDP_UPLOAD_ALWAYS est défini.

HWND [ dans]

Handle de l’interface utilisateur de copie.

pszDestInfPath [ à]

Pointeur vers le chemin d’accès de destination, dans le magasin de pilotes, dans lequel le fichier. inf du pilote a été copié.

pcchDestInfPath [ in, out]

En entrée, spécifie la taille, en caractères, de la mémoire tampon pszDestInfPath . Lors de la sortie, reçoit la taille, en caractères, de la chaîne de chemin d’accès, y compris le caractère null de fin.

Valeur renvoyée

Si l’opération a échoué, la valeur de retour est S_OK ; sinon, le HRESULT contient un code d’erreur.

Pour plus d’informations sur les codes d’erreur COM, consultez gestion des erreurs.

Notes

Notes

Il s’agit d’une fonction de blocage ou synchrone qui peut ne pas être renvoyée immédiatement. La vitesse à laquelle cette fonction est retournée dépend des facteurs d’exécution tels que l’état du réseau, la configuration du serveur d’impression et les facteurs d’implémentation des pilotes 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 faire que l’application semble ne pas répondre.

Le magasin de pilotes est généralement% windir% \ INF ou% windir% \ system32 \ DriverStore \ FileRepository.

Un seul package à la fois peut être téléchargé. Si un package dépend d’autres, il doit être téléchargé séparément.

Seuls les packages de pilotes signés peuvent être téléchargés.

Configuration requise

Condition requise Valeur
Client minimal pris en charge
Windows [Applications de bureau Vista uniquement]
Serveur minimal pris en charge
Windows Serveur 2008 [ applications de bureau uniquement]
En-tête
Winspool. h (inclure Windows. h)
Bibliothèque
Winspool. lib
DLL
Spoolss.dll
Noms Unicode et ANSI
UploadPrinterDriverPackageW (Unicode) et UploadPrinterDriverPackageA (ANSI)

Voir aussi

Impression

Fonctions API du spouleur d’impression