VideoPortGetCommonBuffer 函数 (video.h)

VideoPortGetCommonBuffer 函数在 Windows XP 及更高版本中 过时,仅支持与现有驱动程序的向后兼容。 就其位置,驱动程序编写器应使用 VideoPortAllocateCommonBuffer

VideoPortGetCommonBuffer 分配和映射系统内存,以便从处理器和设备同时访问它,以便进行通用缓冲区 DMA作。

语法

VIDEOPORT_DEPRECATED VIDEOPORT_API PVOID VideoPortGetCommonBuffer(
  [in]  IN PVOID              HwDeviceExtension,
  [in]  IN ULONG              DesiredLength,
  [in]  IN ULONG              Alignment,
  [out] OUT PPHYSICAL_ADDRESS LogicalAddress,
  [out] OUT PULONG            pActualLength,
  [in]  IN BOOLEAN            CacheEnabled
);

参数

[in] HwDeviceExtension

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

[in] DesiredLength

指定请求的内存字节数。

[in] Alignment

指定缓冲区的请求对齐方式。 视频端口驱动程序当前忽略此参数。

[out] LogicalAddress

指向接收适配器用于访问分配缓冲区的逻辑地址的变量的指针。

[out] pActualLength

指向一个变量的指针,该变量接收为此请求分配的缓冲区的实际大小(以字节为单位)。

[in] CacheEnabled

指定是否可以缓存分配的内存。

返回值

VideoPortGetCommonBuffer 如果成功,则返回已分配缓冲区的基虚拟地址;否则,如果无法分配缓冲区,则返回 NULL

言论

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

要求

要求 价值
最低支持的客户端 在 Windows 2000 及更高版本的 Windows作系统中可用。
目标平台 桌面
标头 video.h (include Video.h)
Videoprt.lib
DLL Videoprt.sys
IRQL PASSIVE_LEVEL

另请参阅

VideoPortAllocateCommonBuffer