Compartir a través de


Función EnumMonitors

La función EnumMonitors recupera información sobre los monitores de puerto instalados en el servidor especificado.

Sintaxis

BOOL EnumMonitors(
  _In_  LPTSTR  pName,
  _In_  DWORD   Level,
  _Out_ LPBYTE  pMonitors,
  _In_  DWORD   cbBuf,
  _Out_ LPDWORD pcbNeeded,
  _Out_ LPDWORD pcReturned
);

Parámetros

pName [in]

Puntero a una cadena terminada en null que especifica el nombre del servidor en el que residen los monitores. Si este parámetro es NULL, se enumeran los monitores locales.

Nivel [in]

Versión de la estructura a la que apunta pMonitors.

Este valor puede ser 1 o 2.

pMonitors [out]

Puntero a un búfer que recibe una matriz de estructuras. El búfer debe ser lo suficientemente grande como para almacenar las cadenas a las que hacen referencia los miembros de la estructura.

Para determinar el tamaño de búfer necesario, llame a EnumMonitors con cbBuf establecido en cero. Se produce un error en EnumMonitors, GetLastError devuelve ERROR_INSUFFICIENT_BUFFER y el parámetro pcbNeeded devuelve el tamaño, en bytes, del búfer necesario para contener la matriz de estructuras y sus datos.

El búfer recibe una matriz de estructuras de MONITOR_INFO_1 si Level es 1 o MONITOR_INFO_2 estructuras si Level es 2.

cbBuf [in]

Tamaño, en bytes, del búfer al que apunta pMonitors.

pcbNeeded [ out]

Puntero a una variable que recibe el número de bytes copiados si la función se realiza correctamente o el número de bytes necesarios si cbBuf es demasiado pequeño.

pcReturned [out]

Puntero a una variable que recibe el número de estructuras devueltas en el búfer a las que apunta pMonitors.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es un valor distinto de cero.

Si la función no se realiza correctamente, el valor devuelto es cero.

Comentarios

Nota:

Se trata de una función de bloqueo o sincrónica que podría no devolverse inmediatamente. La rapidez con la que devuelve esta función depende de factores en tiempo de ejecución, como el estado de red, la configuración del servidor de impresión y los factores de implementación del controlador de impresora que son difíciles de predecir al escribir una aplicación. Llamar a esta función desde un subproceso que administra la interacción con la interfaz de usuario podría hacer que la aplicación parezca que no responde.

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado
Winspool.h (incluye Windows.h)
Biblioteca
Winspool.lib
Archivo DLL
Winspool.drv
Nombres Unicode y ANSI
EnumMonitorsW (Unicode) y EnumMonitorsA (ANSI)

Consulte también

Impresión

Funciones de la API del administrador de trabajos de impresión

MONITOR_INFO_1

MONITOR_INFO_2