다음을 통해 공유


FSCTL_ENUM_OVERLAY 제어 코드

FSCTL_ENUM_OVERLAY 제어 코드는 지정된 볼륨에 대한 지원 공급자의 모든 데이터 원본을 열거합니다.

이 작업을 수행하려면 다음 매개 변수 를 사용하여 FltFsControlFile 또는 ZwFsControlFile 을 호출합니다.

매개 변수

  • 인스턴스 [in]: FltFsControlFile만 해당 합니다. 호출자에 대한 불투명 instance 포인터입니다. 이 매개 변수는 필수이며 NULL일 수 없습니다.

  • FileObject [in]: FltFsControlFile만 해당 합니다. 분리할 볼륨을 지정하는 파일 포인터 개체입니다. 이 매개 변수는 필수이며 NULL일 수 없습니다.

  • FileHandle [in]: ZwFsControlFile만 해당 합니다. 분리할 볼륨의 파일 핸들입니다. 이 매개 변수는 필수이며 NULL일 수 없습니다.

  • FsControlCode [in]: 작업에 대한 제어 코드입니다. 이 작업에 는 FSCTL_REMOVE_OVERLAY 사용합니다.

  • InputBuffer [in]: WOF_EXTERNAL_INFO 구조를 포함해야 하는 입력 버퍼에 대한 포인터입니다.

  • InputBufferLength [in]: sizeof(WOF_EXTERNAL_INFO)로 설정합니다.

  • OutputBuffer [out]: 볼륨을 지원하는 데이터 원본에 대해 하나 이상의 WIM_PROVIDER_OVERLAY_ENTRY 구조를 수신하는 출력 버퍼에 대한 포인터입니다.

  • OutputBufferLength [out]: OutputBuffer가 가리키는 버퍼의 크기(바이트)입니다.

  • LengthReturned [out]: 성공적으로 완료될 때 OutputBuffer 에 기록된 바이트 수를 지정합니다.

상태 블록

FltFsControlFile 또는 ZwFsControlFile 은 작업이 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 적절한 함수가 다음 NTSTATUS 값 중 하나를 반환할 수 있습니다.

코드 의미
STATUS_ACCESS_DENIED 요청자에게는 관리 권한이 없습니다.
STATUS_BUFFER_TOO_SMALL OutputBuffer에서 가리키고 OutputBufferLength로 지정된 출력 버퍼의 길이가 너무 작습니다.
STATUS_INTERNAL_ERROR 요청된 볼륨에 액세스할 수 없습니다.
STATUS_INVALID_DEVICE_REQUEST 지원 서비스가 없거나 시작되지 않았습니다.

설명

WIM 공급자에 대한 데이터 원본을 열거할 때 출력 버퍼에는 WIM_PROVIDER_OVERLAY_ENTRY 구조의 배열이 포함됩니다. 출력 버퍼의 크기는 모든 오버레이 항목을 포함할 수 있을 만큼 커야 합니다. 그렇지 않으면 호출이 STATUS_BUFFER_TOO_SMALL 반환됩니다.

추가 지원 공급자는 고유한 특정 열거형 구조를 정의합니다.

요구 사항

요구 사항 유형 요구 사항
지원되는 최소 클라이언트 Windows 8.1 Update
헤더 Ntifs.h ( Ntifs.h 또는 Fltkernel.h 포함)

추가 정보

FltFsControlFile

ZwFsControlFile

FSCTL_ADD_OVERLAY

WOF_EXTERNAL_INFO