Share via


Função ReadEventLogA (winbase.h)

Lê o número especificado de entradas do log de eventos especificado. A função pode ser usada para ler entradas de log em ordem cronológica ou cronológica inversa.

Sintaxe

BOOL ReadEventLogA(
  [in]  HANDLE hEventLog,
  [in]  DWORD  dwReadFlags,
  [in]  DWORD  dwRecordOffset,
  [out] LPVOID lpBuffer,
  [in]  DWORD  nNumberOfBytesToRead,
  [out] DWORD  *pnBytesRead,
  [out] DWORD  *pnMinNumberOfBytesNeeded
);

Parâmetros

[in] hEventLog

Um identificador para o log de eventos a ser lido. A função OpenEventLog retorna esse identificador.

[in] dwReadFlags

Use os valores de sinalizador a seguir para indicar como ler o arquivo de log. Esse parâmetro deve incluir um dos seguintes valores (os sinalizadores são mutuamente exclusivos).

Valor Significado
EVENTLOG_SEEK_READ
0x0002
Comece a ler do registro especificado no parâmetro dwRecordOffset .

Essa opção poderá não funcionar com arquivos de log grandes se a função não puder determinar o tamanho do arquivo de log. Para obter detalhes, consulte o artigo da Base de Dados de Conhecimento, 177199.

EVENTLOG_SEQUENTIAL_READ
0x0001
Leia os registros sequencialmente.

Se esta for a primeira operação de leitura, os sinalizadores de EVENTLOG_FORWARDS_READ EVENTLOG_BACKWARDS_READ determinarão qual registro é lido primeiro.

 

Você deve especificar um dos sinalizadores a seguir para indicar a direção para operações de leitura sucessivas (os sinalizadores são mutuamente exclusivos).

Valor Significado
EVENTLOG_FORWARDS_READ
0x0004
O log é lido em ordem cronológica (mais antigo para o mais recente).

O padrão.

EVENTLOG_BACKWARDS_READ
0x0008
O log é lido em ordem cronológica inversa (mais recente para o mais antigo).

[in] dwRecordOffset

O número de registro da entrada de log na qual a operação de leitura deve ser iniciada. Esse parâmetro é ignorado, a menos que dwReadFlags inclua o sinalizador EVENTLOG_SEEK_READ .

[out] lpBuffer

Um buffer alocado pelo aplicativo que receberá uma ou mais estruturas EVENTLOGRECORD . Esse parâmetro não pode ser NULL, mesmo que o parâmetro nNumberOfBytesToRead seja zero.

O tamanho máximo desse buffer é 0x7ffff bytes.

[in] nNumberOfBytesToRead

O tamanho do buffer lpBuffer , em bytes. Essa função lerá quantas entradas de log caberão no buffer; a função não retornará entradas parciais.

[out] pnBytesRead

Um ponteiro para uma variável que recebe o número de bytes lidos pela função.

[out] pnMinNumberOfBytesNeeded

Um ponteiro para uma variável que recebe o tamanho necessário do buffer lpBuffer . Esse valor só será válido se essa função retornar zero e GetLastError retornar ERROR_INSUFFICIENT_BUFFER.

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.

Comentários

Quando essa função retorna com êxito, a posição de leitura no log de eventos é ajustada pelo número de registros lidos.

Nota O nome de arquivo configurado para essa origem também pode ser o nome de arquivo configurado para outras fontes (várias fontes podem existir como subchaves em um único log). Portanto, essa função pode retornar eventos que foram registrados por mais de uma fonte.
 

Exemplos

Para obter um exemplo, consulte Consultando informações de evento.

Observação

O cabeçalho winbase.h define ReadEventLog como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho winbase.h (incluir Windows.h)
Biblioteca Advapi32.lib
DLL Advapi32.dll
Conjunto de APIs ext-ms-win-advapi32-eventlog-ansi-l1-1-0 (introduzido no Windows 10, versão 10.0.10240)

Confira também

ClearEventLog

CloseEventLog

EVENTLOGRECORD

Funções de log de eventos

OpenEventLog

ReportEvent