FsRtlQueryKernelEaFile 함수(ntifs.h)

루틴 FsRtlQueryKernelEaFile 은 명시적 QueryEA 요청을 빌드하고 완료될 때까지 동기적으로 대기하여 결과를 반환하는 데 사용됩니다. 이렇게 하면 호출자가 핸들 대신 FileObject에서 이 작업을 수행할 수 있습니다.

구문

NTSTATUS FsRtlQueryKernelEaFile(
  [in]            PFILE_OBJECT FileObject,
  [out]           PVOID        ReturnedEaData,
  [in]            ULONG        Length,
  [in]            BOOLEAN      ReturnSingleEntry,
  [in]            PVOID        EaList,
  [in]            ULONG        EaListLength,
  [in, optional]  PULONG       EaIndex,
  [in]            BOOLEAN      RestartScan,
  [out, optional] PULONG       LengthReturned
);

매개 변수

[in] FileObject

QueryEA 요청을 보낼 FileObject 에 대한 포인터입니다.

[out] ReturnedEaData

확장 특성 값이 반환될 호출자 제공 FILE_FULL_EA_INFORMATION 구조화된 출력 버퍼에 대한 포인터입니다.

[in] Length

ReturnedEaData의 길이(바이트)를 지정합니다.

[in] ReturnSingleEntry

버퍼를 가능한 한 많은 EA로 채우는 대신 단일 항목만 반환해야 하는지 여부를 지정합니다.

[in] EaList

쿼리할 확장 특성을 지정하는 호출자가 제공한 FILE_GET_EA_INFORMATION 구조화된 입력 버퍼에 대한 포인터입니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다.

[in] EaListLength

EA 목록이 제공된 경우 EaList의 길이를 지정합니다.

[in, optional] EaIndex

값을 반환할 EA의 선택적 인덱스를 제공합니다. 지정된 경우 해당 EA만 반환됩니다.

[in] RestartScan

EA 검사를 처음부터 다시 시작할지 여부를 지정합니다.

[out, optional] LengthReturned

ReturnedEaData 버퍼에 반환되는 유효한 데이터의 양을 지정합니다.

반환 값

루틴 FsRtlQueryKernelEaFile은 상태 코드 중 하나를 반환합니다.

반환 코드 설명
STATUS_EAS_NOT_SUPPORTED
파일 시스템은 확장 특성을 지원하지 않습니다.
STATUS_INVALID_DEVICE_REQUEST
직접 디바이스가 열려 있으므로 요청이 실패했습니다.
STATUS_INSUFFICIENT_RESOURCES
IRP(I/O 요청 패킷)를 이 요청에 할당할 수 없습니다.
STATUS_SUCCESS
요청이 성공했습니다.

설명

이 루틴 FsRtlQueryKernelEaFile 은 지정된 입력 및 출력 버퍼가 지정된 경우 커널 모드 주소여야 하므로 전달된 모든 버퍼가 커널 모드에서 온 것으로 가정합니다. 사용자 모드 주소를 지정하면 작업이 실패합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8
지원되는 최소 서버 Windows Server 2012
대상 플랫폼 Windows
헤더 ntifs.h

추가 정보

FsRtlSetKernelEaFile

ZwQueryEaFile

ZwSetEaFile