VideoPortLockPages 函数 (video.h)

VideoPortLockPages 函数在 Windows 2000 及更高版本中已过时。 使用 VideoPortLockBuffer 代替此函数。

VideoPortLockPages 锁定指定的虚拟内存,并可能执行部分或全部 DMA 传输。

语法

VIDEOPORT_DEPRECATED VIDEOPORT_API BOOLEAN VideoPortLockPages(
  [in]      IN PVOID                     HwDeviceExtension,
  [in, out] IN OUT PVIDEO_REQUEST_PACKET pVrp,
  [in]      IN PEVENT                    pUEvent,
  [in]      IN PEVENT                    pDisplayEvent,
  [in]      IN DMA_FLAGS                 DmaFlags
);

参数

[in] HwDeviceExtension

指向微型端口驱动程序的设备扩展的指针。

[in, out] pVrp

指向 VIDEO_REQUEST_PACKET 结构的指针。 微型端口驱动程序必须设置 InputBufferInputBufferLength ,以分别包含要锁定的传输内存的虚拟地址和大小(以字节为单位)。 此内存由显示驱动程序分配,并通过 IOCTL 传递给微型端口驱动程序。 视频端口分别返回指向的指针,以及 OutputBufferLength 和 OutputBufferLength 中散点/收集列表的大小(以字节为单位)。

[in] pUEvent

指向将由微型端口驱动程序设置的映射用户事件的指针,或 NULL。 用户事件由显示驱动程序映射,并通过 IOCTL 传递给微型端口驱动程序。

[in] pDisplayEvent

指向将由微型端口驱动程序设置的事件的指针,或 NULL。 此事件由显示驱动程序创建并通过 IOCTL 接收。

[in] DmaFlags

指定要执行的操作。 此参数必须是以下值之一:

含义
VideoPortDmaInitOnly VideoPortLockPages 锁定请求的内存。
VideoPortKeepPagesLocked VideoPortLockPages 不执行任何操作。
VideoPortUnlockAfterDma VideoPortLockPages 不执行任何操作。

返回值

VideoPortLockPages 在成功完成请求的操作后返回 TRUE 。 如果 DmaFlags 参数不等于 VideoPortDmaInitOnly,则返回 FALSE

注解

有关基于数据包和通用缓冲区 DMA 传输的信息,请参阅 视频微型端口驱动程序中的总线主 DMA。

无法从 ISR 或 DPC 调用 VideoPortLockPages

要求

要求
最低受支持的客户端 适用于 Windows 2000 及更高版本的 Windows 操作系统。
目标平台 桌面
标头 video.h (包括 Video.h)
Library Videoprt.lib
DLL Videoprt.sys

另请参阅

VideoPortLockBuffer