次の方法で共有


FltSetInformationFile 関数 (fltkernel.h)

FltSetInformationFile は 、特定のファイルの情報を設定します。

構文

NTSTATUS FLTAPI FltSetInformationFile(
  [in] PFLT_INSTANCE          Instance,
  [in] PFILE_OBJECT           FileObject,
  [in] PVOID                  FileInformation,
  [in] ULONG                  Length,
  [in] FILE_INFORMATION_CLASS FileInformationClass
);

パラメーター

[in] Instance

呼び出し元の不透明なインスタンス ポインター。 このパラメーターは必須であり、 NULL にすることはできません。

[in] FileObject

ファイルのファイル オブジェクト ポインター。 このパラメーターは必須であり、 NULL にすることはできません。

[in] FileInformation

ファイルに設定する情報を含む呼び出し元によって割り当てられたバッファーへのポインター。 FileInformationClass パラメーターは、情報の種類を指定します。 このパラメーターは必須であり、 NULL にすることはできません。

[in] Length

FileInformation バッファーのサイズ (バイト単位)。

[in] FileInformationClass

ファイルに設定する情報の種類を指定します。 次の値が定義されています。

意味
FileAllocationInformation ファイル のFILE_ALLOCATION_INFORMATION を設定します。
FileBasicInformation ファイル のFILE_BASIC_INFORMATION を設定します。
FileDispositionInformation ファイル のFILE_DISPOSITION_INFORMATION を設定します。
FileEndOfFileInformation ファイル のFILE_END_OF_FILE_INFORMATION を設定します。
FileLinkInformation ファイル のFILE_LINK_INFORMATION を設定します。
FilePositionInformation ファイル のFILE_POSITION_INFORMATION を設定します。
FileRenameInformation ファイル のFILE_RENAME_INFORMATION を設定します。 ファイル名の変更の詳細については、次の「解説」セクションを参照してください。
FileValidDataLengthInformation ファイル のFILE_VALID_DATA_LENGTH_INFORMATION を設定します。

戻り値

FltSetInformationFile は 、STATUS_SUCCESSまたは適切な NTSTATUS 値を返します。

注釈

ミニフィルター ドライバーは 、FltSetInformationFile を呼び出して、特定のファイルの情報を設定します。 ファイルは現在開いている必要があります。

ファイル名の変更操作では、 FltSetInformationFile に渡されるパラメーター値に次の制限があります。 FILE_RENAME_INFORMATIONの参照エントリに記載されているように、ファイルまたはディレクトリの名前はボリューム内でのみ変更できます。 言い換えると、名前の変更操作では、ファイルまたはディレクトリを別のボリュームに移動することはできません。 ZwSetInformationFile とは異なり、FltSetInformationFile はFILE_RENAME_INFORMATION構造体の内容を検証しません。 したがって、 FltSetInformationFile の呼び出し元は、ファイルまたはディレクトリの新しい名前が古い名前と同じボリューム上にあることを確認します。

ミニフィルター ドライバーでは、ファイルの名前を変更するには、ZwSetInformationFile ではなく FltSetInformationFile を使用する必要があります。

要件

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

こちらもご覧ください

FILE_ALLOCATION_INFORMATION

FILE_BASIC_INFORMATION

FILE_DISPOSITION_INFORMATION

FILE_END_OF_FILE_INFORMATION

FILE_LINK_INFORMATION

FILE_POSITION_INFORMATION

FILE_RENAME_INFORMATION

FILE_VALID_DATA_LENGTH_INFORMATION

FltQueryInformationFile

FltQueryVolumeInformationFile

ZwSetInformationFile