FltDeleteStreamHandleContext 함수(fltkernel.h)
FltDeleteStreamHandleContext는 지정된 스트림 핸들에 대해 지정된 미니필터 드라이버 instance 설정한 컨텍스트를 제거하고 삭제할 컨텍스트를 표시합니다.
구문
NTSTATUS FLTAPI FltDeleteStreamHandleContext(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[out] PFLT_CONTEXT *OldContext
);
매개 변수
[in] Instance
스트림 핸들에 연결된 컨텍스트 목록에서 컨텍스트를 제거할 미니필터 드라이버 instance 대한 불투명 instance 포인터입니다.
[in] FileObject
파일 스트림에 대한 파일 개체에 대한 포인터입니다.
[out] OldContext
삭제된 컨텍스트의 주소를 수신하는 호출자가 할당한 변수에 대한 포인터입니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다. OldContext가 NULL이 아니고 NULL_CONTEXT 가리키지 않는 경우 호출자는 FltReleaseContext를 호출하여 더 이상 필요하지 않은 경우 이 컨텍스트를 해제해야 합니다.
반환 값
FltDeleteStreamHandleContext 는 STATUS_SUCCESS 또는 다음 중 하나와 같은 적절한 NTSTATUS 값을 반환합니다.
반환 코드 | 설명 |
---|---|
STATUS_FLT_DELETING_OBJECT | 지정된 인스턴스 가 삭제되고 있습니다. 오류 코드입니다. |
STATUS_NOT_FOUND | 일치하는 컨텍스트를 찾을 수 없습니다. 오류 코드입니다. |
STATUS_NOT_SUPPORTED | 파일 시스템은 이 파일 스트림 핸들에 대한 스트림별 컨텍스트를 지원하지 않습니다. 오류 코드입니다. |
설명
컨텍스트에 대한 자세한 내용은 미니필터 컨텍스트 정보를 참조하세요.
컨텍스트는 참조 횟수이므로 일반적으로 미니필터 드라이버가 FltDeleteStreamHandleContext 와 같은 루틴을 호출하여 컨텍스트를 명시적으로 삭제할 필요는 없습니다.
미니필터 드라이버는 FltDeleteStreamHandleContext 를 호출하여 스트림 핸들에서 컨텍스트를 제거하고 삭제할 컨텍스트를 표시합니다. 컨텍스트에 미해결 참조가 없는 한 컨텍스트는 일반적으로 즉시 해제됩니다(예: 컨텍스트가 다른 스레드에서 계속 사용 중이기 때문).
새 컨텍스트를 할당하려면 FltAllocateContext를 호출합니다.
스트림 컨텍스트를 얻으려면 FltGetStreamHandleContext를 호출합니다.
스트림 컨텍스트를 설정하려면 FltSetStreamHandleContext를 호출합니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 유니버설 |
헤더 | fltkernel.h(Fltkernel.h 포함) |
라이브러리 | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <= APC_LEVEL |