FltParseFileName 함수(fltkernel.h)

FltParseFileName은 파일 이름 문자열에서 확장명, 스트림 및 최종 구성 요소를 구문 분석합니다.

구문

NTSTATUS FLTAPI FltParseFileName(
  [in]      PCUNICODE_STRING FileName,
  [in, out] PUNICODE_STRING  Extension,
  [in, out] PUNICODE_STRING  Stream,
  [in, out] PUNICODE_STRING  FinalComponent
);

매개 변수

[in] FileName

파일 이름으로 구문 분석할 문자열을 포함하는 UNICODE_STRING 구조체에 대한 포인터입니다. 이 매개 변수는 필수이며 NULL일 수 없습니다.

[in, out] Extension

FileName 문자열에서 구문 분석된 확장을 수신하는 UNICODE_STRING 구조체에 대한 포인터입니다. 확장이 없으면 FltParseFileNameExtension.BufferNULL 로, Extension.Length 를 0으로 설정합니다. 그렇지 않으면 Extension.BufferFileName.Buffer에서 확장의 시작 부분에 대한 포인터를 수신하고 Extension.Length 는 확장의 길이를 바이트 단위로 받습니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다.

[in, out] Stream

FileName 문자열에서 구문 분석된 스트림 이름을 수신하는 UNICODE_STRING 구조체에 대한 포인터입니다. 스트림 이름을 찾을 수 없으면 FltParseFileNameStream 설정합니다. 버퍼NULL로, Stream. 길이를 0으로 설정합니다. 그렇지 않으면 Stream. 버퍼FileName.Buffer에서 스트림 이름의 시작 부분에 대한 포인터를 수신하고 Stream. Length는 스트림 이름의 길이(바이트)를 받습니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다.

[in, out] FinalComponent

FileName 문자열에서 구문 분석된 최종 이름 구성 요소를 수신하는 UNICODE_STRING 구조체에 대한 포인터입니다. 최종 구성 요소가 없으면 FltParseFileNameFinalComponent.BufferNULL 로 설정하고 FinalComponent.Length 를 0으로 설정합니다. 그렇지 않으면 FinalComponent.BufferFileName.Buffer에서 최종 구성 요소의 시작 부분에 대한 포인터를 수신하고 FinalComponent.Length 는 최종 구성 요소의 길이를 바이트 단위로 받습니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다.

반환 값

FltParseFileName 은 STATUS_SUCCESS 또는 적절한 NTSTATUS 오류 코드를 반환합니다.

설명

FltParseFileName은 파일 이름 문자열에서 확장명, 스트림 이름 및 최종 구성 요소를 구문 분석합니다. 파일 이름을 정규화하거나 전체 경로 이름을 지정할 필요는 없습니다. 파일 이름이 짧은 파일 이름인 경우 FltParseFileName 은 확장명만 구문 분석합니다.

다음은 로컬 파일의 정규화된 이름의 예입니다.

\Device\HarddiskVolume1\Documents and Settings\MyUser\My Documents\Test Results.txt:stream1

FltParseFileName은 다음과 같이 정규화된 이름을 구문 분석합니다.

확장: "txt"

Stream: ":stream1"

FinalComponent: "test Results.txt:stream1"

다음은 파일에 대한 짧은 이름의 예입니다.

TestRe~1.txt

FltParseFileName은 다음과 같이 이 짧은 이름을 구문 분석합니다.

확장: "txt"

Stream: NULL

FinalComponent: "TestRe~1.txt"

파일 이름 정규화 및 파일 이름 구문 분석에 대한 자세한 내용은 FLT_FILE_NAME_INFORMATION.

FLT_FILE_NAME_INFORMATION 구조체의 내용을 구문 분석하려면 FltParseFileNameInformation을 호출합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP SP2(서비스 팩 2) 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다.
대상 플랫폼 유니버설
헤더 fltkernel.h(Fltkernel.h 포함)
라이브러리 FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

추가 정보

FLT_FILE_NAME_INFORMATION

FltParseFileNameInformation

UNICODE_STRING