如何使用JNA读取Windows事件日志字段名称?

时间:2016-09-07 20:24:02

标签: java windows jna

我正在使用JNA来读取Windows事件日志。我可以从每条记录中获得相当数量的数据但我无法获得字段名称。

要读取我正在做的日志

EventLogIterator iter = new EventLogIterator("Security");
while(iter.hasNext()) {
    EventLogRecord record = iter.next();
    System.out.println("Event ID: " + record.getEventId()
        + ", Event Type: " + record.getType()
        + ", Event Source: " + record.getSource());
    String strings[] = record.getStrings();
    for(String str : strings) {
        System.out.println(str);
    }
}

我可以轻松获取id,类型和来源等数据。然后我可以得到可能是SubjectUserSid,SubjectUserName等的字符串列表。

我一直在尝试使用字段名称获取我想要的数据。有没有一种简单的方法从record.getStrings()中提取每个字符串的字段名称/标题?我注意到记录中有一个byte []数据变量。我试图阅读这个,但我无法从中获得任何有用的信息。我知道我可以获得某些变量的数据长度和偏移量,我认为我可以提取我想要的数据,但我想知道这是否正确或是否有更简单的方法。

0 个答案:

没有答案