Função RxPrefixTableLookupName (prefix.h)
RxPrefixTableLookupName pesquisa um nome em uma tabela de prefixo usada para catalogar nomes SRV_CALL, NET_ROOT e V_NET_ROOT e converte o ponteiro subjacente em uma estrutura que contém o nome.
Sintaxe
PVOID RxPrefixTableLookupName(
[in] IN PRX_PREFIX_TABLE ThisTable,
[in] IN PUNICODE_STRING CanonicalName,
[out] OUT PUNICODE_STRING RemainingName,
IN PRX_CONNECTION_ID ConnectionId
);
Parâmetros
[in] ThisTable
Um ponteiro para a estrutura RX_PREFIX_TABLE na qual procurar.
[in] CanonicalName
Um ponteiro para o nome da cadeia de caracteres Unicode a ser pesquisada.
[out] RemainingName
Um ponteiro para o nome da cadeia de caracteres Unicode da parte do nome que não foi correspondente.
ConnectionId
Um parâmetro opcional que representa um ponteiro para o RX_CONNECTION_ID a ser usado.
Valor de retorno
RxPrefixTableLookupName retorna um ponteiro para o nó encontrado se uma correspondência for encontrada. Se nenhuma correspondência for encontrada, RxPrefixTableLookupName retornará um ponteiro NULL.
Observações
Essa rotina é usada internamente pelo RDBSS em resposta a uma chamada do MUP para reivindicar um nome ou formar o caminho de criação para uma estrutura de NET_ROOT ou V_NET_ROOT. A rotina RxPrefixTableLookupName também pode ser usada por minidiretórios de rede, desde que o bloqueio apropriado seja adquirido antes de acessar a tabela e o bloqueio seja liberado quando o trabalho for concluído. O uso normal por um driver seria o seguinte:
- Adquira um bloqueio compartilhado chamando RxpAcquirePrefixTableLockShared.
- Procure um nome chamando RxPrefixTableLookupName.
- Libere o bloqueio compartilhado chamando RxpReleasePrefixTableLock.
Em builds verificados, RxPrefixTableLookupName faz com que o sistema asserte se o comprimento da cadeia de caracteres CanonicalName não for maior que zero.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Área de trabalho |
cabeçalho | prefix.h (inclua Prefix.h) |
IRQL | <= APC_LEVEL |
Consulte também
RxpAcquirePrefixTableLockExclusive