Função RxFinalizeNetRoot (fcb.h)
RxFinalizeNetRoot finaliza a estrutura de NET_ROOT fornecida. O chamador deve ter um bloqueio exclusivo na tabela netname associada ao objeto do dispositivo.
Sintaxe
BOOLEAN RxFinalizeNetRoot(
[out] OUT PNET_ROOT ThisNetRoot,
[in] IN BOOLEAN RecursiveFinalize,
[in] IN BOOLEAN ForceFinalize
);
Parâmetros
[out] ThisNetRoot
Um ponteiro para a estrutura NET_ROOT para finalizar.
[in] RecursiveFinalize
O valor que indica se a finalização deve ser feita recursivamente.
[in] ForceFinalize
O valor que indica se a finalização deve ser forçada, independentemente da contagem de referência.
Se ForceFinalize for FALSE, o NodeReferenceCount membro da estrutura NET_ROOT apontado por ThisNetRoot deverá ser 1 para que o NET_ROOT seja finalizado.
Valor de retorno
RxFinalizeNetRoot retornará verdadeiro no êxito ou FALSE se a finalização não ocorrer: se uma finalização do NET_ROOT já estiver em processo, RxFinalizeNetRoot retornará FALSE.
Observações
A rotina RxFinalizeNetRoot normalmente não é chamada diretamente por drivers de minidiretor de rede. O RDBSS chama essa rotina internamente quando a contagem de referência no NET_ROOT é decrementada para 1.
Antes de chamar RxFinalizeNetRoot, um bloqueio na tabela netname associada ao objeto do dispositivo deve ser adquirido no modo exclusivo.
Se o parâmetro RecursiveFinalize for VERDADEIRO, RxFinalizeNetRoot limpará as estruturas fcb órfãs associadas a esse NET_ROOT. Essas FCBs órfãs são estruturas em que o membro FcbState tem o sinalizador FCB_STATE_ORPHANED definido.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Área de trabalho |
cabeçalho | fcb.h (include Fcb.h, Mrxfcb.h) |
IRQL | <= APC_LEVEL |