Compartilhar 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 a partir 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 antiga para a mais recente).

O padrão.

EVENTLOG_BACKWARDS_READ
0x0008
O log é lido em ordem cronológica inversa (mais recente a mais antiga).

[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 se o parâmetro nNumberOfBytesToRead for 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 de retorno

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

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

Observações

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

Observação O nome do 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 Consulta de informações de evento.

Nota

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 do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 2000 Professional [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows 2000 Server [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
cabeçalho winbase.h (inclua Windows.h)
biblioteca Advapi32.lib
de DLL Advapi32.dll
conjunto de API ext-ms-win-advapi32-eventlog-ansi-l1-1-0 (introduzido no Windows 10, versão 10.0.10240)

Consulte também

ClearEventLog

CloseEventLog

EVENTLOGRECORD

Funções de registro em log de eventos

OpenEventLog

ReportEvent