FltSetVolumeInformation 関数 (fltkernel.h)

FltSetVolumeInformation は、指定されたインスタンスがアタッチされているボリュームに関するさまざまな種類の情報を変更します。

構文

NTSTATUS FLTAPI FltSetVolumeInformation(
  [in]  PFLT_INSTANCE        Instance,
  [out] PIO_STATUS_BLOCK     Iosb,
  [out] PVOID                FsInformation,
  [in]  ULONG                Length,
  [in]  FS_INFORMATION_CLASS FsInformationClass
);

パラメーター

[in] Instance

ボリュームにアタッチされているミニフィルター ドライバー インスタンスの不透明なインスタンス ポインター。

[out] Iosb

最終的な完了状態と操作に関する情報を受け取るIO_STATUS_BLOCK構造体へのポインター。

[out] FsInformation

ボリュームに設定する値を含む呼び出し元によって割り当てられたバッファーへのポインター。 バッファーに含まれる情報の構造は、 FsInformationClass パラメーターによって定義されます。

[in] Length

FsInformation が指すバッファーのサイズ (バイト単位)。 呼び出し元は、指定された FsInformationClass に従ってこのパラメーターを設定する必要があります。 たとえば、 FsInformationClass の値が FileFsControlInformation の場合、 Lengthsizeof(FILE_FS_CONTROL_INFORMATION) 以上である必要があります。

[in] FsInformationClass

ボリュームに設定する情報の種類。 次のいずれか。

意味
FileFsControlInformation ボリューム のFILE_FS_CONTROL_INFORMATION を設定します。
FileFsLabelInformation ボリューム のFILE_FS_LABEL_INFORMATION を設定します。
FileFsObjectIdInformation ボリューム のFILE_FS_OBJECTID_INFORMATION を設定します。

戻り値

FltSetVolumeInformation は、次のいずれかのSTATUS_SUCCESSまたは適切な NTSTATUS 値を返します。

リターン コード 説明
STATUS_INFO_LENGTH_MISMATCH
Length に無効な値が指定されました。 これはエラー コードです。
STATUS_INSUFFICIENT_RESOURCES
FltSetVolumeInformation でプール割り当てエラーが発生しました。 これはエラー コードです。
STATUS_INVALID_INFO_CLASS
FsInformationClass に無効な値が指定されました。 これはエラー コードです。
STATUS_INVALID_PARAMETER
インスタンスはネットワーク ボリュームにアタッチされます。 FltSetVolumeInformation を使用してネットワーク ボリューム情報を設定することはできません。 これはエラー コードです。

注釈

ボリュームに関する情報を照会するには、 FltQueryVolumeInformation を呼び出します。

要件

要件
対象プラットフォーム ユニバーサル
Header fltkernel.h (Fltkernel.h を含む)
Library FltMgr.lib
[DLL] Fltmgr.sys
IRQL PASSIVE_LEVEL

こちらもご覧ください

FILE_FS_CONTROL_INFORMATION

FILE_FS_LABEL_INFORMATION

FILE_FS_OBJECTID_INFORMATION

FltQueryVolumeInformation