ConnectToPrinterDlg, fonction

La fonction ConnectToPrinterDlg affiche une boîte de dialogue qui permet aux utilisateurs de parcourir et de se connecter aux imprimantes d’un réseau. Si l’utilisateur sélectionne une imprimante, la fonction tente de créer une connexion à celle-ci ; si aucun pilote approprié n’est installé sur le serveur, l’utilisateur a la possibilité de créer une imprimante localement.

Syntaxe

HANDLE ConnectToPrinterDlg(
  _In_ HWND  hwnd,
  _In_ DWORD Flags
);

Paramètres

hwnd [in]

Spécifie la fenêtre parente de la boîte de dialogue.

Indicateurs [in]

Ce paramètre est réservé et doit être égal à zéro.

Valeur retournée

Si la fonction réussit et que l’utilisateur sélectionne une imprimante, la valeur de retour est un handle pour l’imprimante sélectionnée.

Si la fonction échoue ou si l’utilisateur annule la boîte de dialogue sans sélectionner d’imprimante, la valeur de retour est NULL.

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.

La fonction ConnectToPrinterDlg tente de créer une connexion à l’imprimante sélectionnée. Toutefois, si le serveur sur lequel réside l’imprimante n’a pas de pilote approprié installé, la fonction offre à l’utilisateur la possibilité de créer une imprimante localement. Une application appelante peut déterminer si la fonction a créé une imprimante localement en appelant GetPrinter avec une structure PRINTER_INFO_2 , puis en examinant le membre Attributes de cette structure.

Une application doit appeler DeletePrinter pour supprimer une imprimante locale. Une application doit appeler DeletePrinterConnection pour supprimer une connexion à une imprimante.

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

Voir aussi

Impression

Fonctions API du spouleur d’impression

AddPrinterConnection

ClosePrinter

DeletePrinter

DeletePrinterConnection

GetPrinter

PRINTER_INFO_2