Função EvtExportLog (winevt.h)
Copia eventos do canal ou arquivo de log especificado e os grava no arquivo de log de destino.
Sintaxe
BOOL EvtExportLog(
[in, optional] EVT_HANDLE Session,
[in] LPCWSTR Path,
[in] LPCWSTR Query,
[in] LPCWSTR TargetFilePath,
[in] DWORD Flags
);
Parâmetros
[in, optional] Session
Um identificador de sessão remota que a função EvtOpenSession retorna. Defina como NULL para canais locais.
[in] Path
O nome do canal ou o caminho completo para um arquivo de log que contém os eventos que você deseja exportar. Se o parâmetro Query contiver uma consulta XPath, você deverá especificar o canal ou o arquivo de log. Se o parâmetro Flags contiver EvtExportLogFilePath, você deverá especificar o arquivo de log. Se o parâmetro Query contiver uma consulta XML estruturada, o canal ou caminho especificado aqui deverá corresponder ao canal ou caminho na consulta. Se o parâmetro Flags contiver EvtExportLogChannelPath, esse parâmetro poderá ser NULL se a consulta for uma consulta XML estruturada que especifica o canal.
[in] Query
Uma consulta que especifica os tipos de eventos que você deseja exportar. Você pode especificar uma consulta XPath 1.0 ou uma consulta XML estruturada. Se o XPath contiver mais de 20 expressões, use uma consulta XML estruturada. Para exportar todos os eventos, defina esse parâmetro como NULL ou "*".
[in] TargetFilePath
O caminho completo para o arquivo de log de destino que receberá os eventos. O arquivo de log de destino não deve existir.
[in] Flags
Sinalizadores que indicam se os eventos vêm de um canal ou arquivo de log. Para obter valores possíveis, consulte a enumeração EVT_EXPORTLOG_FLAGS .
Retornar valor
Valor/código retornado | Descrição |
---|---|
|
A função foi bem-sucedida. |
|
Falha na função. Use a função GetLastError para obter o código de erro. |
Comentários
Você pode exportar eventos de vários canais usando uma consulta XML estruturada (consulte Consumindo eventos); no entanto, você não pode usar essa função para mesclar eventos de vários arquivos de log. Se o resultado da consulta estiver vazio, o serviço criará um arquivo que contém informações de cabeçalho, mas nenhum evento.
Para remover eventos de um canal e gravá-los em um arquivo de log de destino, chame a função EvtClearLog . Para incluir cadeias de caracteres localizadas com os eventos no arquivo de log, chame a função EvtArchiveExportedLog .
Você deve especificar o caminho absoluto para o arquivo de log de destino; não é possível usar caminhos relativos e variáveis de ambiente para especificar o arquivo de log de destino. O caminho pode ser um caminho UNC (Convenção Universal de Nomenclatura). Você deve usar .evtx como a extensão de nome de arquivo.
Essa função afeta apenas o canal ou o arquivo de log especificados. Se o canal usar autoBackup ou fileMax, essa função não afetará esses arquivos de backup.
Exemplos
Para obter um exemplo que mostra como usar essa função, consulte Salvando eventos em um arquivo de log.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | winevt.h |
Biblioteca | Wevtapi.lib |
DLL | Wevtapi.dll |