Как подключиться к классу LogFileEventConsumer при создании подписки на постоянное событие wmi с помощью модуля wmi python - PullRequest
0 голосов
/ 03 ноября 2019

Я пытаюсь создать постоянную подписку на событие с помощью python. Первое создание eventfilter, Второе создание eventconsumer и Третье привязывают EventCumer к EventFilter, используя этот код:

import wmi

Username = "username"

Password = "password"
connection = wmi.WMI("192.168.43.239", user=Username, password=Password)

QueryLanguage = "WQL"
Name1 = "ServiceFilter"
EventNamespace = "root\cimv2"
Query = "select * from __instanceModificationEvent within 5 where targetInstance isa 'Win32_LogicalDisk'"
j = connection.__EventFilter.new(QueryLanguage=QueryLanguage, Name=Name1, EventNamespace=EventNamespace, Query=Query)

for j in connection.__EventFilter():
    j.Put_()
    j.Path()

Name2 = "ServiceConsumer"
Filename = "C:\\Logfile.log"
Text = "A change has occurred on the service: %TargetInstance.ProviderName%"
k = connection.__EventConsumer.LogFileEventConsumer.new(Name=Name2, Filename=Filename, Text=Text)

for k in connection.__EventConsumer.LogFileEventConsumer():
    k.Put()
    k.Path()

l = connection.__FilterToConsumerBinding.new(Filter=getattr(a, Path), Consumer=getattr(d, Path))

for l in connection.__FilterToConsumerBinding():
    l.Put()
    l.Path()

, но это дает мнеэта ошибка:

Traceback (most recent call last):
  File "C:/Users/Windows 10/PycharmProjects/ashkan/Exevent.py", line 21, in <module>
    k = connection.LogFileEventConsumer.new(Name=Name2, Filename=Filename, Text=Text)
  File "C:\Users\Windows 10\PycharmProjects\ashkan\venv\lib\site-packages\wmi.py", line 1147, in __getattr__
    return getattr (self._namespace, attribute)
  File "C:\Users\Windows 10\PycharmProjects\ashkan\venv\lib\site-packages\win32com\client\dynamic.py", line 527, in __getattr__
    raise AttributeError("%s.%s" % (self._username_, attr))
AttributeError: <unknown>.LogFileEventConsumer

Может ли кто-нибудь помочь мне исправить это?

...