IOCTL_SERIAL_INTERNAL_BASIC_SETTINGS IOCTL (ntddser.h)
IOCTL_SERIAL_INTERNAL_BASIC_SETTINGS请求将串行设备设置为基本操作模式。 串行的基本操作模式一次读取和写入一个字节,不使用握手流控制或超时。 基本操作模式适合由使用 16550 UART 接口子集的驱动程序使用。 此类驱动程序的示例包括使用 16450 UART 的旧硬件的鼠标驱动程序或图形板驱动程序。
IOCTL_SERIAL_INTERNAL_BASIC_SETTINGS请求返回在串行设置基本操作模式之前正在使用的操作模式设置。 客户端使用 IOCTL_SERIAL_INTERNAL_RESTORE_SETTINGS 请求还原以前的操作模式。 客户端应将操作模式设置视为不透明。 还原设置时,串行不会验证设置。 另请注意,串行的替换驱动程序可能实现一组不同的基本设置。
主要代码
IRP_MJ_INTERNAL_DEVICE_CONTROL
输入缓冲区
无。
输入缓冲区长度
无。
输出缓冲区
AssociatedIrp.SystemBuffer 指向客户端分配SERIAL_BASIC_SETTINGS结构,Serial 使用该结构输出当前配置。
输出缓冲区长度
Parameters.DeviceIoControl.OutputBufferLength 设置为SERIAL_BASIC_SETTINGS结构的大小(以字节为单位)。
状态块
如果请求成功, 则信息 成员将设置为SERIAL_BASIC_SETTINGS的大小(以字节为单位)。 否则, 信息 成员设置为零。
状态成员设置为串行设备控制请求的泛型状态值之一。 如果 Status 设置为 STATUS_BUFFER_TOO_SMALL,则 Parameters.DeviceIoControl.OutputLength 的值小于SERIAL_BASIC_SETTINGS结构的大小(以字节为单位)。
要求
要求 | 值 |
---|---|
Header | ntddser.h (包括 Ntddser.h) |