Fonction ConfigurePortUI (winsplp.h)
La fonction ConfigurePortUI d’une DLL d’interface utilisateur de moniteur de port obtient les informations de configuration de port de l’utilisateur et les envoie à la DLL du serveur de surveillance de port.
Syntaxe
BOOL WINAPI pfnConfigurePortUI(
_In_opt_ PCWSTR pszServer,
_In_ HWND hWnd,
_In_ PCWSTR pszPortName
);
Paramètres
[in, optional] pszServer
Pointeur fourni par l’appelant vers une chaîne représentant un nom de serveur ou NULL si l’imprimante est locale. (Le moniteur de port peut ignorer ce paramètre.)
[in] hWnd
Handle fourni par l’appelant de la fenêtre qui doit être utilisé comme parent pour les boîtes de dialogue. Si la valeur est NULL, aucune boîte de dialogue ne doit être affichée.
[in] pszPortName
Pointeur fourni par l’appelant vers une chaîne représentant le nom du port à configurer.
Valeur retournée
Si l’opération réussit, la fonction doit retourner TRUE. Dans le cas contraire, il doit retourner FALSE. Si l’opération n’est pas prise en charge ou est annulée par l’utilisateur (en sélectionnant ANNULER ou en sélectionnant OK sans modifier les paramètres de configuration), la fonction doit appeler SetLastError(ERROR_CANCELLED), puis retourner FALSE.
Remarques
Les DLL d’interface utilisateur du moniteur de port sont nécessaires pour définir une fonction ConfigurePortUI et inclure l’adresse de la fonction dans une structure MONITORUI .
Le spouleur du client appelle ConfigurePortUI à partir de sa fonction ConfigurePortPort (décrite dans la documentation Microsoft Windows SDK). Les arguments reçus par ConfigurePortUI sont les arguments reçus par ConfigurePort.
La fonction doit effectuer les opérations suivantes :
-
Appelez OpenPrinter, en spécifiant un nom d’imprimante au format suivant :
- \\ServerName\,XcvPortPortName
où ServerName et PortName sont les noms de serveur et de port reçus en tant qu’arguments de fonction ConfigurePortUI .
L’appel à OpenPrinter nécessite une structure PRINTER_DEFAULTS, qui est décrite dans la documentation SDK Windows. Le membre DesiredAccess de la structure doit être défini sur SERVER_ACCESS_ADMINISTER. Ses membres pDatatype et pDevMode peuvent avoir la valeur NULL.
Cet appel entraîne l’appel de la fonction XcvOpenPort du serveur d’impression du moniteur d’impression.
- Obtenez des paramètres de configuration de port auprès de l’utilisateur en affichant une boîte de dialogue.
- Appelez XcvData une ou plusieurs fois, en spécifiant des chaînes de noms de données personnalisées, pour envoyer chaque paramètre de configuration à la DLL du serveur. Chaque appel XcvData entraîne l’appel de la fonction XcvDataPort du serveur.
- Appelez ClosePrinter, en spécifiant le handle reçu d’OpenPrinter. Cela entraîne l’appel de la fonction XcvClosePort de la DLL du serveur.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | winsplp.h (inclure Winsplp.h) |
Bibliothèque | NtosKrnl.exe |