Partager via


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 :

  1. Appelez OpenPrinter, en spécifiant un nom d’imprimante au format suivant :
    \\ServerName\,XcvPortPortName

    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.

  2. Obtenez des paramètres de configuration de port auprès de l’utilisateur en affichant une boîte de dialogue.
  3. 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.
  4. 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

Voir aussi

XcvOpenPort

XcvClosePort

XcvDataPort

XcvData