Функция 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. Другими словами, файловая система должна гарантировать, что она не вызывает FsRtlAddToTunnelCache и FsRtlDeleteTunnelCache одновременно из разных потоков.
Дополнительные сведения о туннелирование имен файлов см. в статье Базы знаний Майкрософт 172190.
Требования
Требование | Ценность |
---|---|
целевая платформа | Всеобщий |
заголовка | ntifs.h (include Ntifs.h) |
библиотеки |
NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |