Partilhar via


Função FsRtlAddToTunnelCache (ntifs.h)

O FsRtlAddToTunnelCache de rotina armazena em cache um nome de arquivo que é removido de um diretório quando um arquivo é renomeado ou excluído.

Sintaxe

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
);

Parâmetros

[in] Cache

Ponteiro para um cache de túnel inicializado por FsRtlInitializeTunnelCache .

[in] DirectoryKey

Valor chave do diretório que contém o arquivo que está sendo excluído ou renomeado. A chave de diretório é um identificador exclusivo sem sinal de 64 bits que é gerado e atribuído ao diretório pelo sistema de arquivos.

[in] ShortName

Cadeia de caracteres Unicode que contém o nome curto (8.3) do arquivo. Se KeyByShortName for FALSE, ShortName será opcional.

[in] LongName

Cadeia de caracteres Unicode que contém o nome longo do arquivo. Um nome de arquivo longo é um nome para um arquivo ou diretório que excede o formato de nome de arquivo padrão 8.3. Se KeyByShortName for verdadeiro, LongName será opcional.

[in] KeyByShortName

Defina como VERDADEIRO se o nome do arquivo a ser excluído do diretório for o nome curto do arquivo, FALSE se for o nome longo.

[in] DataLength

Comprimento em bytes das informações a serem armazenadas na entrada de cache do túnel para esse arquivo. O valor desse parâmetro é específico do sistema de arquivos, mas deve ser o mesmo para todas as entradas no cache do túnel.

[in] Data

Ponteiro para um buffer que contém informações específicas do sistema de arquivos a serem armazenadas na entrada de cache do túnel para esse arquivo.

Valor de retorno

Nenhum

Observações

Quando um nome de arquivo é removido de um diretório (para um arquivo que está sendo renomeado ou excluído), o sistema de arquivos pode armazenar em cache o nome do arquivo chamando FsRtlAddToTunnelCache. A finalidade do cache de túnel é propagar propriedades de arquivo se um novo arquivo for criado que tenha o mesmo nome longo ou curto que o arquivo acabou de ser excluído ou renomeado.

FsRtlAddToTunnelCache cria uma nova entrada que contém o nome do arquivo especificado e a chave de diretório e adiciona a entrada ao cache do túnel para o volume montado em que o arquivo está sendo removido ou excluído. Essa entrada também pode conter um pacote de dados de tamanho fixo de informações específicas do sistema de arquivos para o arquivo.

O chamador é necessário para sincronizar essa chamada com FsRtlDeleteTunnelCache. Em outras palavras, um sistema de arquivos deve garantir que ele não chame FsRtlAddToTunnelCache e FsRtlDeleteTunnelCache ao mesmo tempo de threads diferentes.

Para obter mais informações sobre túnel de nome de arquivo, consulte Artigo 172190 da Base de Dados de Conhecimento da Microsoft.

Requisitos

Requisito Valor
da Plataforma de Destino Universal
cabeçalho ntifs.h (inclua Ntifs.h)
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Consulte também

FsRtlDeleteKeyFromTunnelCache

FsRtlDeleteTunnelCache

FsRtlInitializeTunnelCache

UNICODE_STRING