Partager via


DeletePortUI, fonction (winsplp.h)

Une dll d’interface utilisateur de moniteur de port DeletePortUI supprime un port d’imprimante.

Syntaxe

BOOL DeletePortUI(
  [in, optional] 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 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 à supprimer.

Valeur de retour

Si l’opération réussit, la fonction doit retourner TRUE. Sinon, elle doit retourner FALSE. Si l’opération est annulée par l’utilisateur ou non prise en charge, la fonction doit appeler SetLastError(ERROR_CANCELLED), puis retourner FALSE.

Remarques

Les DLL de l’interface utilisateur du moniteur de port sont requises pour définir une fonction DeletePortUI et inclure l’adresse de la fonction dans une structure MONITORUI.

Le spouleur appelle DeletePortUI à partir de sa fonction DeletePort. Les arguments reçus par DeletePortUI sont les arguments reçus par DeletePort. (La fonction DeletePort est décrite dans la documentation du Kit de développement logiciel (SDK) Microsoft Windows.)

La fonction doit effectuer les opérations suivantes :

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

    Nom_serveur et PortName sont les noms de serveur et de port reçus en tant qu’arguments de fonction DeletePort UI.

    L’appel à openPrinter nécessite une structure PRINTER_DEFAULTS, qui est décrite dans la documentation du Kit de développement logiciel (SDK) Windows. Le membre DesiredAccess de la structure doit être défini sur SERVER_ACCESS_ADMINISTER. Ses membres pDatatype et pDevMode peuvent être NULL.

    Cet appel entraîne l’appel de la fonction XcvOpenPort du serveur d’impression.

  2. Appelez XcvData, en spécifiant les arguments d’entrée suivants :
    • Handle reçu de OpenPrinter
    • Nom du port reçu en tant qu’argument de fonction
    • Chaîne de nom de données de « DeletePort »

    Cet appel entraîne l’appel de la fonction XcvClosePort du serveur.

  3. Si l’interaction utilisateur est requise, obtenez des informations auprès de l’utilisateur en affichant une boîte de dialogue, puis appelez XcvData, en spécifiant des chaînes de nom de données personnalisées, pour envoyer les informations à la DLL du serveur. L’appel XcvData du serveur entraîne l’appel de la fonction XcvDataPort du serveur.
  4. Appelez closePrinter, en spécifiant le handle reçu de OpenPrinter. Cela entraîne l’appel de la fonction XcvClosePort du serveur.

Exigences

Exigence Valeur
plateforme cible Bureau
d’en-tête winsplp.h (include Winsplp.h)

Voir aussi

XcvClosePort

XcvData

XcvDataPort

XcvOpenPort