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 o administren colas que usan controladores de impresión v4.
El AddPrintDeviceObject función de proveedor de impresión 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 para una impresora abierta. Debe ser un HANDLE devuelto por las funciones de AddPrinter o OpenPrinter spooler.
[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.
Observaciones
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 iniciar el servicio de cola
El proveedor de impresión debe llamar a esta función para cada impresora instalada previamente propiedad del proveedor. Durante este tiempo, AddPrintDeviceObject no tiene que suplantar el contexto de usuario cuando se llama a él.
Cualquier objeto de dispositivo que se agregue mediante AddPrintDeviceObject persistirá hasta que lo quite mediante RemovePrintDeviceObjecto hasta que se reinicie el servicio de cola. Y cuando se detiene el servicio de cola, todos los objetos del dispositivo se eliminan automáticamente.
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de | Escritorio |
encabezado de | winsplp.h (include Winspool.h) |
biblioteca de | WinSpool.lib |
DLL de | WinSpool.drv |