VideoPortDDCMonitorHelper 函数 (video.h)
使用 DDC 协议查询 EDID 信息的监视器。
语法
VIDEOPORT_DEPRECATED VIDEOPORT_API BOOLEAN VideoPortDDCMonitorHelper(
[in] IN PVOID HwDeviceExtension,
[in] IN PVOID DDCControl,
[in, out] IN OUT PUCHAR EdidBuffer,
[in] IN ULONG EdidBufferSize
);
参数
[in] HwDeviceExtension
指向微型端口驱动程序设备扩展的指针。
[in] DDCControl
指向 DDC_CONTROL 结构的指针。
[in, out] EdidBuffer
指向视频端口驱动程序返回 EDID 结构的缓冲区的指针。 对于 ACPI 设备,视频端口驱动程序预设了前四个字节,指示尝试读取 EDID。
[in] EdidBufferSize
EdidBuffer 点的缓冲区的大小(以字节为单位)。
返回值
VideoPortDDCMonitorHelper 如果成功,则返回 true。
言论
此函数存在于 Windows XP 版本之前,但已更改。
视频微型端口驱动程序的 HwVidGetVideoChildDescriptor 函数可以调用 VideoPortDDCMonitorHelper,以帮助从符合 DDC2 的监视器读取 EDID 结构。 VideoPortDDCMonitorHelper 实现根据 IーC 规范读取 EDID 结构的详细信息,但必须回调到视频微型端口驱动程序,以读取和写入 IーC 串行时钟和数据行的单个数据位。
由视频微型端口驱动程序实现的四个函数,这些函数对 IーC 时钟和数据行进行读取和写入,ReadClockLine、ReadDataLine、WriteClockLine,以及 WriteDataLine。 当视频微型端口驱动程序调用 VideoPortDDCMonitorHelper时,它将提供指向 DDCControl->I2CCallbacks中这四个函数的指针。
可以使用在 Dispmprt.h 中定义别名的 ACPI_METHOD_OUTPUT_DDC 方法获取 EDID。 对于没有另一个返回 EDID 数据的标准机制的集成 LCD,需要此方法。
在 256 字节缓冲区中,此函数的调用方可以接收:
- 一个 128 字节 EDID
- 两个 128 字节的 EDID
- 一个 256 字节的 EDID(从 P&D 显示)
- 无 EDID
调用方应始终请求完整的 256 字节,因为无法仅读取段的第二个 128 字节块。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 在 Windows 2000 及更高版本的 Windows作系统中可用。 |
目标平台 | 桌面 |
标头 | video.h (include Video.h) |
库 | Videoprt.lib |
DLL | Videoprt.sys |
IRQL | PASSIVE_LEVEL |