Функция 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) имя файла. Если параметр KeyByShortName имеет значение FALSE, shortName является необязательным.
[in] LongName
Строка в Юникоде, содержащая длинное имя файла. Длинное имя файла — это имя файла или каталога, которое превышает стандартный формат имени файла 8.3. Если параметр KeyByShortName имеет значение TRUE, longName является необязательным.
[in] KeyByShortName
Задайте значение TRUE , если имя файла, удаляемого из каталога, является коротким именем файла, и false , если это длинное имя.
[in] DataLength
Длина в байтах сведений, которые будут храниться в записи кэша туннеля для этого файла. Значение этого параметра зависит от файловой системы, но оно должно быть одинаковым для всех записей в кэше туннеля.
[in] Data
Указатель на буфер, содержащий сведения о файловой системе, которые будут храниться в записи кэша туннеля для этого файла.
Возвращаемое значение
None
Remarks
При удалении имени файла из каталога (для переименовываемого или удаляемого файла) файловая система может кэшировать имя файла, вызвав FsRtlAddToTunnelCache. Кэш туннеля предназначен для распространения свойств файла, если создается новый файл с таким же длинным или коротким именем, что и только что удаленный или переименованный файл.
FsRtlAddToTunnelCache создает новую запись, содержащую указанное имя файла и ключ каталога, и добавляет запись в кэш туннеля для подключенного тома, где удаляется или удаляется файл. Эта запись также может содержать пакет данных фиксированного размера, содержащий сведения о файле, относящиеся к файловой системе.
Вызывающий объект требуется для синхронизации этого вызова с FsRtlDeleteTunnelCache. Другими словами, файловая система должна гарантировать, что она не вызывает FsRtlAddToTunnelCache и FsRtlDeleteTunnelCache одновременно из разных потоков.
Дополнительные сведения о туннелированиях имен файлов см. в статье базы знаний Майкрософт 172190.
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Верхняя часть | ntifs.h (включая Ntifs.h) |
Библиотека | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |