Función EnumPrintProcessorDatatypes
La función EnumPrintProcessorDatatypes enumera los tipos de datos que admite un procesador de impresión especificado.
Sintaxis
BOOL EnumPrintProcessorDatatypes(
_In_ LPTSTR pName,
_In_ LPTSTR pPrintProcessorName,
_In_ DWORD Level,
_Out_ LPBYTE pDatatypes,
_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 reside el procesador de impresión. Si este parámetro es NULL, se enumeran los tipos de datos del procesador de impresión local.
-
pPrintProcessorName [in]
-
Puntero a una cadena terminada en null que especifica el nombre del procesador de impresión cuyos tipos de datos se enumeran.
-
Nivel [in]
-
Tipo de información devuelta en el búfer pDatatypes . Este parámetro debe ser 1.
-
pDatatypes [out]
-
Puntero a un búfer que recibe una matriz de estructuras de DATATYPES_INFO_1 . Cada estructura describe un tipo de datos disponible. El búfer debe ser lo suficientemente grande como para recibir la matriz de estructuras y cualquier cadena u otros datos a los que apunten los miembros de la estructura.
Para determinar el tamaño de búfer necesario, llame a EnumPrintProcessorDatatypes con cbBuf establecido en cero. Se produce un error en EnumPrintProcessorDatatypes, 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.
-
cbBuf [in]
-
Tamaño, en bytes, del búfer al que apunta pDatatypes.
-
pcbNeededed [out]
-
Puntero a una variable que recibe el número de bytes copiados en el búfer pDatatypes si la función se realiza correctamente. Si el búfer es demasiado pequeño, se produce un error en la función y la variable recibe el número de bytes necesarios.
-
pcReturned [out]
-
Puntero a una variable que recibe el número de estructuras devueltas en el búfer pDatatypes . Este es el número de tipos de datos admitidos.
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 y 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 de controladores 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.
v
A partir de Windows Vista, la información de tipo de datos de los servidores de impresión remotos se recupera de una memoria caché local.
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 |
|
Biblioteca |
|
Archivo DLL |
|
Nombres Unicode y ANSI |
EnumPrintProcessorDatatypesW (Unicode) y EnumPrintProcessorDatatypesA (ANSI) |