IOCTL_SERIAL_INTERNAL_BASIC_SETTINGS IOCTL (ntddser.h)
IOCTL_SERIAL_INTERNAL_BASIC_SETTINGS要求は、シリアル デバイスを基本動作モードに設定します。 シリアルの基本動作モードでは、一度に 1 バイトずつ読み書きが行われ、ハンドシェイク フロー制御やタイムアウトは使用されません。 基本操作モードは、16550 UART インターフェイスのサブセットを使用するドライバーでの使用に適しています。 このようなドライバーの例には、16450 UART を使用する古いハードウェア用のマウス ドライバーまたはグラフィックス パッド ドライバーが含まれます。
IOCTL_SERIAL_INTERNAL_BASIC_SETTINGS要求は、シリアルが基本操作モードを設定する直前に使用されている動作モードの設定を返します。 クライアントは、IOCTL_SERIAL_INTERNAL_RESTORE_SETTINGS 要求を使用して以前の動作モードを復元します。 クライアントは、オペレーティング モードの設定を不透明として扱う必要があります。 シリアルは、設定が復元されるときに設定を確認しません。 シリアルの代替ドライバーは、異なる基本設定のセットを実装する可能性があることにも注意してください。
メジャー コード
IRP_MJ_INTERNAL_DEVICE_CONTROL
入力バッファー
何一つ。
入力バッファーの長さ
何一つ。
出力バッファー
AssociatedIrp.SystemBuffer は、現在の構成を出力するために Serial が使用するクライアント割り当てSERIAL_BASIC_SETTINGS構造体を指します。
出力バッファーの長さ
Parameters.DeviceIoControl.OutputBufferLength は、SERIAL_BASIC_SETTINGS構造体のサイズ (バイト単位) に設定されます。
状態ブロック
要求が成功した場合、Information メンバーは、SERIAL_BASIC_SETTINGSのサイズ (バイト単位) に設定されます。 それ以外の場合、Information メンバーは 0 に設定されます。
Status メンバーは、シリアル デバイス制御要求 の汎用ステータス値のいずれかに設定されます。 Status が STATUS_BUFFER_TOO_SMALL に設定されている場合、Parameters.DeviceIoControl.OutputLength の値は、SERIAL_BASIC_SETTINGS構造体のサイズ (バイト単位) よりも小さくなります。
必要条件
要件 | 価値 |
---|---|
ヘッダー | ntddser.h (Ntddser.h を含む) |