FltDeleteVolumeContext 함수(fltkernel.h)

FltDeleteVolumeContext 는 지정된 미니필터 드라이버가 지정된 볼륨에 대해 설정한 컨텍스트를 제거하고 삭제할 컨텍스트를 표시합니다.

구문

NTSTATUS FLTAPI FltDeleteVolumeContext(
  [in]            PFLT_FILTER  Filter,
  [in]            PFLT_VOLUME  Volume,
  [out, optional] PFLT_CONTEXT *OldContext
);

매개 변수

[in] Filter

호출자에 대한 불투명 필터 포인터입니다.

[in] Volume

볼륨에 대한 불투명 볼륨 포인터입니다.

[out, optional] OldContext

삭제된 컨텍스트의 주소를 수신하는 호출자가 할당한 변수에 대한 포인터입니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다. OldContextNULL이 아니고 NULL_CONTEXT 가리키지 않는 경우 호출자는 FltReleaseContext를 호출하여 더 이상 필요하지 않은 경우 이 컨텍스트를 해제합니다.

반환 값

FltDeleteVolumeContext 는 STATUS_SUCCESS 또는 다음 중 하나와 같은 적절한 NTSTATUS 값을 반환합니다.

반환 코드 설명
STATUS_FLT_DELETING_OBJECT 지정된 볼륨 이 축소되고 있습니다. 오류 코드입니다.
STATUS_NOT_FOUND 일치하는 컨텍스트를 찾을 수 없습니다. 오류 코드입니다.

설명

컨텍스트에 대한 자세한 내용은 미니필터 컨텍스트 정보를 참조하세요.

컨텍스트는 참조 계산되므로 일반적으로 미니필터 드라이버가 컨텍스트를 명시적으로 삭제하기 위해 FltDeleteVolumeContext 와 같은 루틴을 호출할 필요는 없습니다.

미니필터 드라이버는 FltDeleteVolumeContext 를 호출하여 볼륨에서 컨텍스트를 제거하고 삭제할 컨텍스트를 표시합니다. 컨텍스트에 미해결 참조가 없는 한 컨텍스트는 일반적으로 즉시 해제됩니다(예: 컨텍스트가 다른 스레드에서 계속 사용 중이기 때문).

새 컨텍스트를 할당하려면 FltAllocateContext를 호출합니다.

볼륨 컨텍스트를 얻으려면 FltGetVolumeContext를 호출합니다.

볼륨 컨텍스트를 설정하려면 FltSetVolumeContext를 호출합니다.

요구 사항

요구 사항
대상 플랫폼 유니버설
헤더 fltkernel.h(Fltkernel.h 포함)
라이브러리 FltMgr.lib
IRQL <= APC_LEVEL

추가 정보

FltAllocateContext

FltDeleteContext

FltGetVolumeContext

FltReleaseContext

FltSetVolumeContext