26 lines
692 B
Python
26 lines
692 B
Python
## Demonstrates a "push" subscription with a callback function
|
|
import win32evtlog
|
|
|
|
query_text = '*[System[Provider[@Name="Microsoft-Windows-Winlogon"]]]'
|
|
|
|
|
|
def c(reason, context, evt):
|
|
if reason == win32evtlog.EvtSubscribeActionError:
|
|
print("EvtSubscribeActionError")
|
|
elif reason == win32evtlog.EvtSubscribeActionDeliver:
|
|
print("EvtSubscribeActionDeliver")
|
|
else:
|
|
print("??? Unknown action ???", reason)
|
|
context.append(win32evtlog.EvtRender(evt, win32evtlog.EvtRenderEventXml))
|
|
return 0
|
|
|
|
|
|
evttext = []
|
|
s = win32evtlog.EvtSubscribe(
|
|
"System",
|
|
win32evtlog.EvtSubscribeStartAtOldestRecord,
|
|
Query="*",
|
|
Callback=c,
|
|
Context=evttext,
|
|
)
|