Ir para conteúdo
Fórum Script Brasil
  • 0

Ler eventos do Windows


Gafanhoto

Pergunta

Bem a questão é a seguinte.

Quero desenvolver um software em .NET que leia os eventos de ligar e desligar do Windows.

Estes ficam armazenados num arquivo .EVTX localizado na pasta System32 do Windows.

No entanto, a System.IO não lê corretamente arquivos desta extensão.

Como faço para ler tais arquivos?

Obs: não preciso alterar nem excluir logs. Apenas ler o arquivo System.EVTX filtrando as linhas.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Segue a solução encontrada. Estou utilizando .NET Framework 3.5

Imports System.Diagnostics

Public Class windowsLog

    Private Sub windowsLog_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load


        Dim aLog As New EventLog()
        aLog.Log = "System"
        aLog.MachineName = "."

        Dim entry As EventLogEntry


        Dim tbRSS As New DataTable()
        Dim rowNew As DataRow
        Dim dsRSS As New DataSet()

        dsRSS.Tables.Add(tbRSS)
        dsRSS.Tables(0).Columns.Add("Item", GetType(String))
        dsRSS.Tables(0).Columns.Add("Mensagem", GetType(String))
        dsRSS.Tables(0).Columns.Add("Machine ID", GetType(String))
        dsRSS.Tables(0).Columns.Add("Código do Erro", GetType(String))
        gridLog.DataSource = dsRSS.Tables(0)

        If aLog.Entries.Count > 0 Then
            For Each entry In aLog.Entries

                rowNew = dsRSS.Tables(0).NewRow
                'rowNew("Item") = entry.Message
                rowNew("Item") = entry.TimeWritten
                rowNew("Mensagem") = entry.Message
                rowNew("Machine ID") = entry.MachineName
                rowNew("Código do Erro") = entry.EventID
                dsRSS.Tables(0).Rows.Add(rowNew)
                dsRSS.AcceptChanges()
                ' System.Windows.Forms.MessageBox.Show(entry.Message)

            Next
        Else
            MessageBox.Show("Log vazio.")
        End If



    End Sub

End Class

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...