FsRtlAddToTunnelCache 함수(ntifs.h)

FsRtlAddToTunnelCache 루틴은 파일 이름을 바꾸거나 삭제할 때 디렉터리에서 제거되는 파일 이름을 캐시합니다.

구문

void FsRtlAddToTunnelCache(
  [in] TUNNEL         *Cache,
  [in] ULONGLONG      DirectoryKey,
  [in] UNICODE_STRING *ShortName,
  [in] UNICODE_STRING *LongName,
  [in] BOOLEAN        KeyByShortName,
  [in] ULONG          DataLength,
  [in] VOID           *Data
);

매개 변수

[in] Cache

FsRtlInitializeTunnelCache로 초기화된 터널 캐시에 대한 포인터입니다.

[in] DirectoryKey

삭제되거나 이름을 바꿀 파일이 포함된 디렉터리의 키 값입니다. 디렉터리 키는 파일 시스템에서 생성되고 디렉터리에 할당되는 고유한 서명되지 않은 64비트 식별자입니다.

[in] ShortName

파일의 짧은 이름(8.3)을 포함하는 유니코드 문자열입니다. KeyByShortNameFALSE이면 ShortName은 선택 사항입니다.

[in] LongName

파일의 긴 이름을 포함하는 유니코드 문자열입니다. 긴 파일 이름은 표준 8.3 파일 이름 형식을 초과하는 파일 또는 디렉터리의 이름입니다. KeyByShortNameTRUE이면 LongName은 선택 사항입니다.

[in] KeyByShortName

디렉터리에서 삭제할 파일 이름이 파일의 약식 이름이면 TRUE 로, 긴 이름인 경우 FALSE 로 설정합니다.

[in] DataLength

이 파일의 터널 캐시 항목에 저장할 정보의 길이(바이트)입니다. 이 매개 변수의 값은 파일 시스템별 값이지만 터널 캐시의 모든 항목에 대해 동일해야 합니다.

[in] Data

이 파일의 터널 캐시 항목에 저장할 파일 시스템별 정보를 포함하는 버퍼에 대한 포인터입니다.

반환 값

없음

설명

파일 이름이 디렉터리에서 제거되면(이름이 변경되거나 삭제되는 파일의 경우) 파일 시스템은 FsRtlAddToTunnelCache를 호출하여 파일 이름을 캐시할 수 있습니다. 터널 캐시의 목적은 방금 삭제되거나 이름이 바뀐 파일과 길이가 같거나 짧은 새 파일이 만들어진 경우 파일 속성을 전파하는 것입니다.

FsRtlAddToTunnelCache 는 지정된 파일 이름 및 디렉터리 키를 포함하는 새 항목을 만들고 파일이 제거되거나 삭제되는 탑재된 볼륨의 터널 캐시에 항목을 추가합니다. 이 항목에는 파일에 대한 파일 시스템별 정보의 고정 크기 데이터 패킷도 포함될 수 있습니다.

호출자는 이 호출을 FsRtlDeleteTunnelCache와 동기화해야 합니다. 즉, 파일 시스템은 다른 스레드에서 동시에 FsRtlAddToTunnelCacheFsRtlDeleteTunnelCache 를 호출하지 않도록 해야 합니다.

파일 이름 터널링에 대한 자세한 내용은 Microsoft 기술 자료 문서 172190을 참조하세요.

요구 사항

요구 사항
대상 플랫폼 유니버설
헤더 ntifs.h(Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

추가 정보

FsRtlDeleteKeyFromTunnelCache

FsRtlDeleteTunnelCache

FsRtlInitializeTunnelCache

UNICODE_STRING