Python Pywin32 - переполнение ReadEventLogERROR - PullRequest
0 голосов
/ 04 июля 2018

Я пытаюсь прочитать журнал событий Windows, используя pywin32 :

machineAdress = None
eventType = "Application"

log_handle = win32evtlog.OpenEventLog(machineAdress, eventType)
flags = win32evtlog.EVENTLOG_BACKWARDS_READ | win32evtlog.EVENTLOG_SEQUENTIAL_READ
events = win32evtlog.ReadEventLog(log_handle, flags, 0)

К сожалению, win32evtlog.ReadEventLog завершается с ошибкой:

OverflowError: days=1757830483; must have magnitude <= 999999999
The above exception was the direct cause of the following exception:
SystemError: <built-in function ReadEventLog> returned a result with an error set

Согласно doc :

machineAdress - это хост Windows (например, "localhost"), а eventType - имя источника журналов событий Windows (например, "System", "Application", ...). Ошибка одинакова во всех случаях, меняется только число days=....

Я использую Python 3.7 в Windows (64 бит). Заранее спасибо!

1 Ответ

0 голосов
/ 09 октября 2018

Я получил ту же ошибку. Установка pypiwin32 вместо pywin32 решила проблему для меня.

  • Если вы установили pywin32 с помощью исполняемого установщика:
    Удалите pywin32 с параметром Windows Add or remove programs.

  • Если вы установили pywin32 через pip install pywin32:
    Удалите pywin32 через pip uninstall pywin32.

Теперь запустите pip install pypiwin32. Работал для меня с Windows 10, Python 3.7.0 (оба 64-разрядных) и pypiwin32 v223.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...