Compartilhar via


Função TraceLoggingUnregister (traceloggingprovider.h)

Cancela o registro de um provedor traceLogging.

Sintaxe

void TraceLoggingUnregister(
  TraceLoggingHProvider hProvider
);

Parâmetros

hProvider

O identificador do provedor TraceLogging para cancelar o registro.

Valor retornado

Nenhum

Comentários

Quando um componente começa a ser executado, qualquer identificador do provedor TraceLogging no componente estará em um estado não registrado e todas as tentativas de usar o identificador do provedor para gerar eventos serão silenciosamente ignoradas. Antes que o provedor possa gravar eventos, você precisa registrar o provedor usando TraceLoggingRegister. Normalmente, você fará isso durante a inicialização do componente. No desligamento do componente, cancele o registro do provedor chamando TraceLoggingUnregister, por exemplo, antes de retornar de main, wmainou WinMain, em DllMain(DLL_PROCESS_DETACH), antes de retornar de um com falha DriverEntryou na rotina unload do driver.

TraceLoggingRegister não é thread-safe em relação a outras chamadas para TraceLoggingRegister ou TraceLoggingUnregister no mesmo identificador. Não chame TraceLoggingRegister se for possível que outro thread possa chamar TraceLoggingRegister ou TraceLoggingUnregister no mesmo identificador ao mesmo tempo.

Se TraceLoggingRegister falhar, o identificador do provedor permanecerá sem registro e todos os usos do identificador do provedor não serão operações seguras. Em particular, é uma operação não operacional segura para chamar TraceLoggingWrite ou TraceLoggingUnregister com um identificador de provedor não registrado.

Importante

Se a DLL ou o driver chamar TraceLoggingRegister em um identificador de provedor, ele deverá chamar TraceLoggingUnregister nesse identificador de provedor antes que a DLL ou o driver descarregue. Se uma DLL for descarregada sem chamar TraceLoggingUnregister, o processo poderá falhar posteriormente. Se um driver for descarregado sem chamar TraceLoggingUnregister, o sistema poderá falhar posteriormente. A TraceLoggingRegister função estabelece um retorno de chamada de configuração etw e TraceLoggingUnregister cancela o retorno de chamada. Se o retorno de chamada não for cancelado e o módulo for descarregado, ocorrerá uma falha na próxima vez que o ETW tentar invocar o retorno de chamada.

Requisitos

   
Cliente mínimo com suporte Windows Vista [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP]
Cabeçalho traceloggingprovider.h
Biblioteca Advapi32.lib

Confira também

TraceLoggingRegister

EventUnregister