Compartir a través de


Función EngGetPrinterDriver (winddi.h)

La función EngGetPrinterDriver recupera los datos del controlador de la impresora especificada.

Sintaxis

ENGAPI BOOL EngGetPrinterDriver(
  [in]            HANDLE hPrinter,
  [in, optional]  LPWSTR pEnvironment,
  [in]            DWORD  dwLevel,
  [out, optional] BYTE   *lpbDrvInfo,
  [in]            DWORD  cbBuf,
  [out]           DWORD  *pcbNeeded
);

Parámetros

[in] hPrinter

Identificador de la impresora para la que se deben recuperar los datos del controlador.

[in, optional] pEnvironment

Puntero a una cadena terminada en null que especifica el entorno. Por ejemplo, "Windows NT x86" especifica un sistema operativo basado en NT que se ejecuta en un procesador Intel. Si pEnvironment es NULL, se usa el entorno actual del controlador de llamada y la máquina cliente.

[in] dwLevel

Especifica la versión de la estructura a la que apunta lpbDrvInfo . Este parámetro debe ser uno de los siguientes valores:

Valor Significado
1 GDI escribe una estructura de DRIVER_INFO_1 en el búfer en el que apunta lpbDrvInfo .
2 GDI escribe una estructura de DRIVER_INFO_2 en el búfer en el que apunta lpbDrvInfo .
3 GDI escribe una estructura de DRIVER_INFO_3 en el búfer en el que apunta lpbDrvInfo .

[out, optional] lpbDrvInfo

Puntero a un búfer en el que GDI coloca la estructura DRIVER_INFO_X solicitada.

[in] cbBuf

Especifica el tamaño, en bytes, del búfer al que apunta lpbDrvInfo .

[out] pcbNeeded

Puntero a una ubicación de memoria en la que GDI coloca el número de bytes copiados en el búfer al que lpbDrvInfo apunta correctamente, o el número de bytes necesarios si cbBuf es demasiado pequeño.

Valor devuelto

EngGetPrinterDriver devuelve TRUE cuando se realiza correctamente; de lo contrario, notifica un error y devuelve FALSE.

Comentarios

Un archivo DLL del controlador de impresora puede trabajar con varios archivos de datos para admitir diferentes modelos de impresora. El controlador de impresora llama a EngGetPrinterDriver para determinar qué archivo de datos se va a usar. Por ejemplo, el representador Unidrv llama a esta función para determinar el nombre de un archivo GPD y el controlador postscript llama a esta función para determinar el nombre de un archivo PPD . Las estructuras DRIVER_INFO_2 y DRIVER_INFO_3 contienen una ruta de acceso completa y un nombre de archivo que especifican la ubicación del archivo de datos. A continuación, el controlador de impresora puede usar la ruta de acceso devuelta y el nombre de archivo para cargar el archivo de datos llamando a EngLoadModule con la ruta de acceso y el nombre de archivo como un único argumento.

Las estructuras DRIVER_INFO_X se describen en la documentación de Microsoft Windows SDK.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Windows 2000 y versiones posteriores de los sistemas operativos Windows.
Plataforma de destino Universal
Encabezado winddi.h (incluya Winddi.h)
Library Win32k.lib
Archivo DLL Win32k.sys

Consulte también

EngLoadModule