estructura VIDEO_SHARE_MEMORY_INFORMATION (ntddvdeo.h)
La estructura VIDEO_SHARE_MEMORY_INFORMATION se usa para comunicarse con el controlador de pantalla que se ha cumplido una solicitud de un bloque de memoria en modo de usuario.
typedef struct _VIDEO_SHARE_MEMORY_INFORMATION {
ULONG SharedViewOffset;
ULONG SharedViewSize;
PVOID VirtualAddress;
} VIDEO_SHARE_MEMORY_INFORMATION, *PVIDEO_SHARE_MEMORY_INFORMATION;
SharedViewOffset
Indica el desplazamiento, en bytes, desde el principio del búfer de marco de .
SharedViewSize
Indica el tamaño, en bytes, del búfer de fotogramas. El valor de este miembro siempre será un múltiplo de 64 KB.
VirtualAddress
Indica la dirección en la memoria virtual en la que se asignó la memoria solicitada.
Cuando una aplicación debe tener acceso a la memoria de vídeo en modo de usuario, el controlador de pantalla puede llamar al controlador de miniporte de vídeo mediante el envío de una solicitud de IOCTL_VIDEO_SHARE_VIDEO_MEMORY. El controlador de miniporte usa una estructura de VIDEO_SHARE_MEMORY como búfer de entrada y se comunica de nuevo con el controlador de pantalla una estructura VIDEO_SHARE_MEMORY_INFORMATION.
El controlador de minipuerto de vídeo rellena una estructura de VIDEO_SHARE_MEMORY_INFORMATION basada en la información de una estructura de VIDEO_SHARE_MEMORY. En la tabla siguiente se resume cómo se usa la información:
miembro de VIDEO_SHARE_MEMORY | Resultado en VIDEO_SHARE_MEMORY_INFORMATION |
---|---|
ProcessHandle | No se usa. |
ViewOffset | Copiado directamente en SharedViewOffset. |
ViewSize | Los valores que son múltiplos de 64 KB se copian directamente en SharedViewSize. Otros valores se redondean al siguiente múltiplo mayor de 64 KB. |
RequestedVirtualAddress | Si es NULL, el controlador de minipuerto determina la dirección de un búfer de fotogramas que se va a asignar a VirtualAddress. Si no es NULL, el controlador de miniport intenta asignar ese valor a VirtualAddress. |
Requisito | Valor |
---|---|
encabezado de | ntddvdeo.h (include Ntddvdeo.h) |