IRP_MJ_SET_VOLUME_INFORMATION (FS およびフィルター ドライバー)
送信時
I/O マネージャーは IRP_MJ_SET_VOLUME_INFORMATION リクエストを送信します。 たとえば、ユーザーモード アプリケーションが次のような Win32 関数を呼び出したときに送信できます。SetVolumeLabel.
操作: ファイル システム ドライバー
ファイル システム ドライバーは、ファイル オブジェクトを抽出およびデコードして、それがユーザー ボリュームが開いているかどうかを判断する必要があります。 存在する場合、ファイル システム ドライバーは適切なボリューム情報を設定し、IRP を完了する必要があります。 それ以外の場合、ファイル システムはボリューム情報を設定せずに、必要に応じて IRP を完了する必要があります。
設定できるボリューム情報のタイプはファイル システムによって異なりますが、通常は次の値が 1 つ以上含まれます。
- FileFsControlInformation
- FileFsLabelInformation
- FileFsObjectIdInformation
考えられるすべての情報タイプのリストについては、ntifs.h 内の FS_INFORMATION_CLASS 列挙を参照してください。
操作: レガシー ファイル システム フィルター ドライバー
フィルター ドライバーは、この IRP をスタック上の次に下位のドライバーに渡す必要があります。
パラメーター
ファイル システムまたはフィルター ドライバーは、指定された IRP で IoGetCurrentIrpStackLocation を呼び出して、IRP 内の独自のスタックの場所へのポインターを取得します。 次のパラメーターでは、Irp は IRP を指し、IrpSp は IO_STACK_LOCATION を指します。 ドライバーは、IRP の次のメンバーと IRP スタックの場所に設定されている情報を使用して、ボリューム情報の設定要求を処理できます。
DeviceObject ターゲット デバイス オブジェクトへのポインターです。
Irp->AssociatedIrp.SystemBuffer 設定するボリューム情報の値を含む入力バッファーへのポインター。 この情報は、次のいずれかの構造に保存されます。
- FILE_FS_CONTROL_INFORMATION
- FILE_FS_LABEL_INFORMATION
- FILE_FS_OBJECTID_INFORMATION
Irp->Ioステータス は、最終的な完了ステータスと要求された操作に関する情報を受け取る IO_STATUS_BLOCK構造体を指します。
IrpSp->FileObject は、DeviceObject に関連付けられているファイル オブジェクトを指します。
IrpSp->FileObject パラメーターには、FILE_OBJECT構造体でもある RelatedFileObject フィールドへのポインターが含まれています。 RelatedFileObject FILE_OBJECT 構造体のフィールドは、IRP_MJ_SET_VOLUME_INFORMATION の処理中は無効であるため、使用しないでください。
IrpSp->MajorFunction は IRP_MJ_SET_VOLUME_INFORMATION に設定されます。
IrpSp->Parameters.SetVolume.FsInformationClass ボリュームに設定する情報のタイプで、次のいずれかになります。
Value 意味 FileFsControlInformation 設定 FILE_FS_CONTROL_INFORMATION ボリュームに関しては。 FileFsLabelInformation 設定 FILE_FS_LABEL_INFORMATION ボリュームに関しては。 FileFsObjectIdInformation 設定 FILE_FS_OBJECTID_INFORMATION ボリュームに関しては。 IrpSp->Parameters.SetVolume.Length が指すバッファの長さ (バイト単位) です。Irp->AssociatedIrp.SystemBuffer.
関連項目
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示