IOCTL_STORAGE_SET_PROPERTY IOCTL (ntddstor.h)
ドライバーは、IOCTL_STORAGE_SET_PROPERTYを使用して、ストレージ デバイスまたはアダプターのプロパティを設定できます。
手記
Windows 10 バージョン 2004 では IOCTL 定義が照合されるため、IOCTL_STORAGE_SET_PROPERTYを使用する既存のソフトウェアを Windows Server 2022 で再コンパイルする必要があります。
メジャー コード
入力バッファー
実行されるセットの種類、設定されているプロパティ、および特定のプロパティ セットに必要な追加パラメーターを記述する STORAGE_PROPERTY_SET 構造体が含まれます。 追加のプロパティを持つ構造体は、STORAGE_PROPERTY_SETの PropertyIdに応じて、STORAGE_PROPERTY_SET構造体の直後にあります。 たとえば、PropertyId が StorageAdapterProtocolSpecificProperty 場合、STORAGE_PROTOCOL_SPECIFIC_DATA_EXT 構造体はSTORAGE_PROPERTY_SETのすぐ後に続きます。
入力バッファーの長さ
Parameters.DeviceIoControl.InputBufferLength は、Irp->AssociatedIrp.SystemBuffer のパラメーター バッファーのサイズ (バイト単位) を示します。これは、>= sizeof(STORAGE_PROPERTY_SET) である必要があります。
出力バッファー
指定した PropertyIdに依存します。 たとえば、PropertyId が StorageAdapterProtocolSpecificProperty 場合、出力バッファーには、ミニポートからの更新されたデータを含むSTORAGE_PROTOCOL_SPECIFIC_DATA_EXT構造体が含まれます。
出力バッファーの長さ
出力バッファーのサイズ (バイト単位)。
入力/出力バッファー
n/a
入力/出力バッファーの長さ
n/a
状態ブロック
Irp->IoStatus.Status は、要求が成功した場合にSTATUS_SUCCESSに設定されます。 それ以外の場合は、NTSTATUS コードとして適切なエラー条件の状態になります。 詳細については、「NTSTATUS 値 を参照してください。
必要条件
要件 | 価値 |
---|---|
ヘッダー | ntddstor.h |