Gafanhoto Postado Fevereiro 22, 2013 Denunciar Share Postado Fevereiro 22, 2013 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. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Gafanhoto Postado Fevereiro 28, 2013 Autor Denunciar Share Postado Fevereiro 28, 2013 Segue a solução encontrada. Estou utilizando .NET Framework 3.5Imports 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 Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Gafanhoto
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
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.