>>Can you send me a evtx file with the problem ?
>
>The file will be sent by email. I only kept one record.
Hi,
That throws an exception for me. Here's my current test code :
Dim loEventLogReader As New EventLogReader("D:\\Event.evtx", PathType.FilePath)
Dim loEventLogRecord As EventLogRecord = Nothing
While (InlineAssignHelper(loEventLogRecord, DirectCast(loEventLogReader.ReadEvent(), EventLogRecord))) IsNot Nothing
Try
Dim result As Int64 = If(loEventLogRecord.Keywords, 0)
Console.WriteLine(loEventLogRecord.TimeCreated.ToString() + ": " + result.ToString())
Dim final As String = String.Empty
For Each lcString As String In loEventLogRecord.KeywordsDisplayNames
final += lcString & Convert.ToString(",")
Next
If final.Length > 0 Then
final = final.Substring(0, final.Length - 1)
End If
Console.WriteLine(final)
Catch ex As Exception
Console.WriteLine("Exception at {0} : {1} ", loEventLogRecord.TimeCreated.ToString(), ex.Message)
End Try
End While
Console.ReadLine()
Oh, and the helper method:
Private Shared Function InlineAssignHelper(Of T)(ByRef target As T, ByVal value As T) As T
target = value
Return value
End Function
I'm guessing that the error occurs because of omissions in the registry which prevents some items being resolved.