Función AddPrintDeviceObject (winsplp.h)
Advertencia
A partir de Windows 10, las API que admiten proveedores de impresión de terceros están en desuso. Microsoft no recomienda ninguna inversión en proveedores de impresión de terceros. Además, en Windows 8 y productos más recientes en los que el modelo de controlador de impresión v4 está disponible, es posible que los proveedores de impresión de terceros no creen ni administren colas que usen controladores de impresión v4.
La función del proveedor de impresión AddPrintDeviceObject crea un objeto de dispositivo para una cola del proveedor de impresión.
Sintaxis
HRESULT AddPrintDeviceObject(
[in] HANDLE hPrinter,
[out] HANDLE *phDeviceObject
);
Parámetros
[in] hPrinter
Identificador de una impresora abierta. Debe ser un IDENTIFICADOR devuelto por las funciones AddPrinter o OpenPrinter .
[out] phDeviceObject
Identificador del objeto de dispositivo, si se creó correctamente.
Valor devuelto
La función AddPrintDeviceObject devuelve S_OK, si el objeto de dispositivo se creó correctamente. De lo contrario, devuelve un error.
Comentarios
Se debe llamar a la función AddPrintDeviceObject en las situaciones siguientes:
El usuario instala una impresora
El proveedor de impresión debe llamar a esta función después de instalar la impresora.
Se debe llamar a la función suplantando al usuario que está instalando la impresora.
El proveedor de impresión se inicializa después de que se inicie el servicio de cola
El proveedor de impresión debe llamar a esta función para cada impresora instalada previamente que sea propiedad del proveedor. Durante este tiempo, AddPrintDeviceObject no tiene que suplantar el contexto de usuario cuando se llama a .
Cualquier objeto de dispositivo que se agregue mediante AddPrintDeviceObject se conservará hasta que lo quite mediante RemovePrintDeviceObject o hasta que se reinicie el servicio de cola. Y cuando se detiene el servicio de cola, todos los objetos de dispositivo se eliminan automáticamente.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | winsplp.h (incluya Winspool.h) |
Library | WinSpool.lib |
Archivo DLL | WinSpool.drv |