VIDEO_MODE_INFORMATION结构(ntddvdeo.h)

VIDEO_MODE_INFORMATION结构包含有关视频适配器一种模式的所有信息。

语法

typedef struct _VIDEO_MODE_INFORMATION {
  ULONG Length;
  ULONG ModeIndex;
  ULONG VisScreenWidth;
  ULONG VisScreenHeight;
  ULONG ScreenStride;
  ULONG NumberOfPlanes;
  ULONG BitsPerPlane;
  ULONG Frequency;
  ULONG XMillimeter;
  ULONG YMillimeter;
  ULONG NumberRedBits;
  ULONG NumberGreenBits;
  ULONG NumberBlueBits;
  ULONG RedMask;
  ULONG GreenMask;
  ULONG BlueMask;
  ULONG AttributeFlags;
  ULONG VideoMemoryBitmapWidth;
  ULONG VideoMemoryBitmapHeight;
  ULONG DriverSpecificAttributeFlags;
} VIDEO_MODE_INFORMATION, *PVIDEO_MODE_INFORMATION;

成员

Length

指定此结构的长度(以字节为单位)。 微型端口驱动程序可以使用此值来确定此结构的版本。

ModeIndex

指定要在对微型端口驱动程序的调用中使用的特定模式的索引。

VisScreenWidth

指定一个水平扫描行上的可见像素数。

VisScreenHeight

指定屏幕上可见行数(或扫描行)。

ScreenStride

指定一个扫描行开始和下一个扫描行之间的字节数。

NumberOfPlanes

指定设备组合的单独平面数。

BitsPerPlane

指定每个平面每个像素的位数。

Frequency

在 Hertz 中指定屏幕刷新率。

XMillimeter

指定输出设备上的活动区域的宽度(以毫米为单位)。

YMillimeter

指定输出设备上的活动区域的高度(以毫米为单位)。

NumberRedBits

指定红色 DAC 中的位数。

NumberGreenBits

指定绿色 DAC 中的位数。

NumberBlueBits

指定蓝色 DAC 中的位数。

RedMask

具有直接颜色模式的设备是否为红色掩码。 例如,若要指示要用于红色的位 0 到 4,请使用值0x001F。

GreenMask

具有直接颜色模式的设备绿色掩码。 例如,若要指示位 5 到 9 用于绿色,请使用值0x03E0。

BlueMask

具有直接颜色模式的设备是否为蓝色掩码。 例如,若要指示 10 到 14 位用于蓝色,请使用值0x7C00。

AttributeFlags

一组标志,指示设备的特定行为。 下表显示了标志及其含义。

标志名称 标志值 位数 位值和含义
VIDEO_MODE_COLOR 0x0001 0 0 = 单向兼容
1 = 颜色
VIDEO_MODE_GRAPHICS 0x0002 1 0 = 文本模式
1 = 图形
VIDEO_MODE_PALETTE_DRIVEN 0x0004 2 0 = 颜色是直接的
1 = 颜色索引到 调色板
VIDEO_MODE_MANAGED_PALETTE 0x0008 3 0 = 调色板是固定的(必须从微型端口驱动程序查询)
1 = 调色板可设置
VIDEO_MODE_INTERLACED 0x0010 4 0 = 非交错模式
1 = 交错模式
VIDEO_MODE_NO_OFF_SCREEN 0x0020 5 0 = 屏幕外内存可用
1 = 屏幕外内存不能用于存储信息
VIDEO_MODE_NO_64_BIT_ACCESS 0x0040 6 0 = 正确处理 帧缓冲区的 64 位内存写入
1 = 64 位内存写入帧缓冲区未处理

VideoMemoryBitmapWidth

指定视频内存位图的宽度(以像素为单位)。

VideoMemoryBitmapHeight

指定视频内存位图的高度(以像素为单位)。

DriverSpecificAttributeFlags

一组标志,指示设备的特定行为。 这些专用标志在微型端口驱动程序中定义,仅供微型端口和显示驱动程序使用。

言论

视频微型端口驱动程序返回一组VIDEO_MODE_INFORMATION结构,以响应 IOCTL_VIDEO_QUERY_AVAIL_MODES 请求,每个结构都包含有关适配器一种模式的信息。 微型端口驱动程序返回一个VIDEO_MODE_INFORMATION结构,该结构包含有关适配器当前模式的信息,以响应 IOCTL_VIDEO_QUERY_CURRENT_MODE 请求。

VIDEO_MODE_INFORMATION、VisScreenWidthVideoMemoryBitmapWidthScreenStride的三个成员与水平屏幕宽度相关联。 对于每个像素使用一个或多个字节的显示器,这些成员满足不相等性
VisScreenWidth<= VideoMemoryBitmapWidth<= ScreenStride
在垂直屏幕高度的类似关系中,VisScreenHeightVideoMemoryBitmapHeight 满足不平等
VisScreenHeight<= VideoMemoryBitmapHeight

要求

要求 价值
标头 ntddvdeo.h (包括 Ntddvdeo.h)

另请参阅

IOCTL_VIDEO_QUERY_AVAIL_MODES

IOCTL_VIDEO_QUERY_CURRENT_MODE

VIDEO_MEMORY_INFORMATION