IOCTL_CDROM_GET_PERFORMANCE IOCTL (ntddcdrm.h)

サポートされている速度をデバイスから取得します。 IOCTL_CDROM_GET_PERFORMANCE I/O 制御要求は、MMC コマンド GET PERFORMANCE のラッパーです。

この操作を実行するには、 dwIoControlCode パラメーターとして IOCTL_CDROM_GET_PERFORMANCE を指定して DeviceIoControl 関数を呼び出します。

メジャー コード

IRP_MJ_DEVICE_CONTROL

[入力バッファー]

CDROM_PERFORMANCE_REQUEST はパフォーマンス データを要求します。 CDROM_WRITE_SPEED_REQUEST は書き込み速度記述子を要求します。

入力バッファーの長さ

CDROM_PERFORMANCE_REQUESTの長さ。

出力バッファー

要求の種類が CdromWriteSpeedRequest の場合、この IOCTL は CDROM_PERFORMANCE_HEADER 構造体の後に多数のCDROM_WRITE_SPEED_DESCRIPTOR記述子を返します。

要求の種類が CdromPerformanceRequest の場合、この IOCTL は 、CDROM_PERFORMANCE_HEADER 構造体の後に省略可能な記述子を返します。 このヘッダーの後の記述子は、CDROM_PERFORMANCE_HEADER構造体の Except フィールドの値によって異なります。 Except が false の場合は、CDROM_NOMINAL_PERFORMANCE_DESCRIPTORが使用されます。それ以外の場合は、CDROM_EXCEPTION_PERFORMANCE_DESCRIPTORが使用されます。

出力バッファーの長さ

CDROM_PERFORMANCE_HEADERの長さ。

ステータス ブロック

[情報] フィールドは、返されるバイト数に設定されます。

他の API からの状態コード伝達のため、[ 状態] フィールドは次のように設定できます (ただし、これらに限定されません)。

STATUS_BUFFER_TOO_SMALL

出力バッファーの長さは、必要な長さよりも小さくなります。

STATUS_INFO_LENGTH_MISMATCH

入力バッファーの長さが、必要な長さよりも短くなります。

STATUS_INVALID_DEVICE_REQUEST

デバイスはこの要求をサポートしていません。

STATUS_INVALID_PARAMETER

CDROM_PERFORMANCE_REQUEST ヘッダーには、列挙型で指定されたパラメーターの有効な組み合わせが含まれていません。

STATUS_SUCCESS

要求は正常に完了しました。

要件

要件
Header ntddcdrm.h (Winioctl.h を含む)

こちらもご覧ください

CDROM_PERFORMANCE_HEADER

CDROM_PERFORMANCE_REQUEST

CDROM_WRITE_SPEED_REQUEST

DeviceIoControl