Share via


Fonction OpenPort (winsplp.h)

La fonction OpenPort d’un moniteur de port ouvre un port d’imprimante.

Syntaxe

BOOL OpenPort(
  LPWSTR  pName,
  PHANDLE pHandle
);

Paramètres

pName

Pointeur fourni par l’appelant vers une chaîne contenant le nom du port à ouvrir.

pHandle

Pointeur fourni par l’appelant vers un emplacement pour recevoir un handle de port.

Valeur retournée

Si l’opération réussit, la fonction doit retourner TRUE. Dans le cas contraire, il doit retourner FALSE.

Remarques

Les DLL de serveur de surveillance de port sont nécessaires pour définir une fonction OpenPort et inclure l’adresse de la fonction dans une structure MONITOR2 .

La fonction OpenPort est appelée, soit par un moniteur de langue, soit par le spouleur d’impression, lorsqu’une file d’attente d’impression est connectée à un port. L’objectif principal de la fonction OpenPort est de retourner un handle de port que l’appelant peut utiliser comme argument d’entrée pour les appels ultérieurs aux fonctions StartDocPort, WritePort, ReadPort, EndDocPort et GetPrinterDataFromPort du moniteur de port.

En plus de renvoyer un handle de port, la fonction OpenPort peut effectuer des opérations d’initialisation qui doivent être prises en charge avant d’effectuer des opérations de lecture ou d’écriture. Par exemple, si le port prend en charge des valeurs de délai d’attente modifiables, la fonction OpenPort doit définir ces valeurs.

Les appels à OpenPort ne sont pas spécifiques à la tâche d’impression. Entre chaque appel aux fonctions OpenPort et ClosePort d’un moniteur de port, il peut y avoir plusieurs appels à ses fonctions StartDocPort et EndDocPort .

Vous pouvez supposer qu’une fois que le spouleur d’impression a appelé OpenPort avec un nom de port particulier, il n’appellera plus OpenPort avec le même nom de port avant d’appeler ClosePort.

Les fonctions d’analyse d’impression qui acceptent un handle de port en tant qu’entrée n’acceptent pas de handle d’analyse. Par conséquent, la fonction OpenPort doit stocker le handle de moniteur reçu dans un emplacement qui peut être référencé par le handle de port. Cela permet aux fonctions qui acceptent un handle de port de référencer le handle du moniteur.

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

GetPrinterDataFromPort

SetPortTimeOuts

ClosePort

StartDocPort

OpenPortEx

InitializePrintMonitor2

WritePort

EndDocPort

ReadPort