次の方法で共有


FsRtlSetKernelEaFile 関数 (ntifs.h)

FsRtlQueryKernelEaFile ルーチンは、ファイルの拡張属性 (EA) 値を設定、変更、削除し、同期的に完了するまで待機して結果を返すために使用されます。 この API で SecureEA を設定できるようにする IRP_MN_KERNEL マイナー コードを設定します。 これにより、呼び出し元はハンドルではなく FileObject によってこれを行うことができます。

構文

NTSTATUS FsRtlSetKernelEaFile(
  [in] PFILE_OBJECT FileObject,
  [in] PVOID        EaBuffer,
  [in] ULONG        Length
);

パラメーター

[in] FileObject

QueryEA 要求を送信する FileObject へのポインター。

[in] EaBuffer

設定する拡張属性値を含む、呼び出し元が指定した FILE_FULL_EA_INFORMATION構造化入力バッファーへのポインター

[in] Length

EA バッファーの長さを指定します。

戻り値

FsRtlSetKernelEaFile ルーチンは、操作の状態を受け取り、状態コードのいずれかを返します。

リターン コード 形容
STATUS_EA_LIST_INCONSISTENT
EaList パラメーターが正しく書式設定されていません。
STATUS_EAS_NOT_SUPPORTED
ファイル システムは拡張属性をサポートしていません。
STATUS_INSUFFICIENT_RESOURCES
I/O 要求パケット (IRP) をこの要求に割り当てませんでした。
STATUS_INTERMIXED_KERNEL_EA_OPERATION
要求は、同じ呼び出しで通常の EA とカーネル EA を混在させることができません。
STATUS_INVALID_DEVICE_REQUEST
直接デバイスが開いていたため、要求は失敗しました。
STATUS_SUCCESS
要求が成功しました。

備考

このルーチンは、バッファーに渡されるすべてのバッファーがカーネル モードであることを前提としています。

1 つ以上のカーネル EA は、fsRtlSetKernelEaFileへの 1 回の呼び出しで設定、変更、削除 できます。 通常の EA は、FsRtlSetKernelEaFile 関数を使用して設定することもできます。 EA を削除するには、EaValueLength が 0 の EAName を指定します。 1 回の呼び出しで、新規の挿入、既存の変更、または EA の削除を混在させることができます。

必要条件

要件 価値
サポートされる最小クライアント Windows 8
サポートされる最小サーバー Windows Server 2012
ターゲット プラットフォーム の ウィンドウズ
ヘッダー ntifs.h

関連項目

FsRtlQueryKernelEaFile

ZwQueryEaFile

ZwSetEaFile