2011-07-21 40 views
0

我正在尝试使用OpenBackupEventLog(“”,文件)打开保存在CDrom上的事件日志。我正在通过循环加载子目录下的每个文件。目前我有两个问题。
1.脚本会在屏幕上拉出第一个文件名和输出事件,但是当它们到达结尾时它不会重置。 2.当它通过列表的第二个位置时,它会给出找不到文件的错误。Python WINEVTLOG打开备份日志

import win32evtlog 

e = os.listdir('D:\\SomeDir\\AnotherDir\\') 

for item in range(len(e)): 
    handle = win32evtlog.OpenBackupEventLog("None", e[item]) 
    flags = win32evtlog.EVENTLOG_BACKWARDS_READ|win32evtlog.EVENTLOG_SEQUENTIAL_READ 
    total = E.GetNumberofEventLogRecords(handle) 
    print "Total events are: ", total 

    while True: 
     event_list = win32evtlog.ReadEventLog(handle, flags, 0) 
     if event_list: 
      for event in event_list: 
      info = (event.EventType, 
        event.TimeGenerated, 
        event.SourceName, 
        event.EventID) 
      print info 

任何帮助表示赞赏;这就像我不能用win32evtlog关闭连接。我使用了win32evtlog.CloseEventLog(句柄)。

回答

0

这引起了我的问题,几个项目:

  1. CDROM或CD被示数的;我必须将文件复制到临时目录然后处理它们。
  2. 循环结束时没有中断;如果不是事件:打破