Share via


SetPort, fonction

La fonction SetPort définit les status associées à un port d’imprimante.

Syntaxe

BOOL SetPort(
  _In_ LPTSTR pName,
  _In_ LPTSTR pPortName,
  _In_ DWORD  dwLevel,
  _In_ LPBYTE pPortInfo
);

Paramètres

pName [in]

Pointeur vers une chaîne à terminaison zéro qui spécifie le nom du serveur d’imprimante auquel le port est connecté. Définissez ce paramètre sur NULL si le port se trouve sur l’ordinateur local.

pPortName [in]

Pointeur vers une chaîne sans fin qui spécifie le nom du port d’imprimante.

dwLevel [in]

Spécifie le type de structure vers lequel pointe le paramètre pPortInfo .

Cette valeur doit être 3, ce qui correspond à une structure de données PORT_INFO_3 .

pPortInfo [in]

Pointeur vers une structure de PORT_INFO_3 qui contient les informations de port status à définir.

Valeur retournée

Si la fonction réussit, la valeur de retour est une valeur différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro.

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.

L’appelant de la fonction SetPort doit s’exécuter en tant qu’administrateur. En outre, si l’appelant est un moniteur de port ou un moniteur de langue, il doit appeler RevertToSelf pour cesser l’emprunt d’identité avant d’appeler SetPort.

Tous les programmes qui appellent SetPort doivent avoir SERVER_ACCESS_ADMINISTER accès au serveur auquel le port est connecté.

Lorsque vous définissez un port d’imprimante status valeur avec la valeur de gravité PORT_STATUS_TYPE_ERROR, le spouleur d’impression cesse d’envoyer des travaux au port. Le spouleur d’impression reprend l’envoi de travaux au port lorsque le port status est effacé par un autre appel à SetPort.

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
Noms Unicode et ANSI
SetPortW (Unicode) et SetPortA (ANSI)

Voir aussi

Impression

Fonctions API du spouleur d’impression

PORT_INFO_3