Compartir a través de


Estructura DRIVEROBJ (winddi.h)

La estructura DRIVEROBJ se usa para realizar un seguimiento de un recurso, asignado por un controlador, que requiere el uso de servicios GDI. Una estructura DRIVEROBJ permite que un controlador de pantalla solicite el servicio GDI en la administración de recursos por proceso. Al crear una estructura DRIVEROBJ, un controlador de pantalla puede asegurarse de que los recursos se liberarán cuando finalice una aplicación.

Sintaxis

typedef struct _DRIVEROBJ {
  PVOID       pvObj;
  FREEOBJPROC pFreeProc;
  HDEV        hdev;
  DHPDEV      dhpdev;
} DRIVEROBJ;

Miembros

pvObj

Puntero al recurso de controlador al que realizará el seguimiento la estructura DRIVEROBJ. El recurso está asociado al proceso de cliente actual.

pFreeProc

Puntero a una función de devolución de llamada proporcionada por el controlador que libera el recurso al que apunta pvObj. Esta función de devolución de llamada tiene el prototipo siguiente:

BOOL (CALLBACK * FREEOBJPROC) (DRIVEROBJ * pDriverObj);

La función de devolución de llamada devuelve TRUE si es capaz de liberar el recurso y FALSE en caso contrario.

hdev

Identificador GDI para el dispositivo físico asociado al objeto .

dhpdev

Puntero a los datos de la instancia privada del controlador; es decir, este miembro identifica el PDEV del controlador.

Comentarios

Una estructura DRIVEROBJ permite que un controlador de pantalla solicite el servicio GDI en la administración de recursos por proceso. Al crear una estructura DRIVEROBJ, un controlador de pantalla puede asegurarse de que los recursos se liberarán cuando finalice una aplicación.

Algunos controladores, en su compatibilidad con Escape, asignan recursos en nombre de las aplicaciones. En tales casos, la estructura DRIVEROBJ proporciona un medio para que la aplicación notifique al controlador cuando finaliza. GDI llamará a la función de limpieza del controlador para cada estructura DRIVEROBJ asignada en el contexto de una aplicación que no se elimina antes de que finalice la aplicación.

Esta estructura proporciona un mecanismo de bloqueo para el acceso exclusivo al recurso asociado.

Requisitos

Requisito Valor
Header winddi.h (incluya Winddi.h)

Consulte también

EngCreateDriverObj

EngDeleteDriverObj

EngLockDriverObj

EngUnlockDriverObj