Я написал скрипт Python, который обращается к Win32_IP4RouteTable
с помощью следующего:
import wmi
import socket
ip = socket.gethostbyname(socket.gethostname())
rt = wmi.WMI().Win32_IP4RouteTable(Destination = ip)
Проблема в том, что последняя строка не работает на одном компьютере в офисе. Владелец этого компьютера утверждает, что он не редактировал ничего, связанного с этим, за исключением изменения приоритета соединения. Отследить он получает ниже:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "c:\python27\lib\site-packages\wmi.py", line 1147, in __getattr__
return getattr (self._namespace, attribute)
File "c:\python27\lib\site-packages\win32com\client\dynamic.py", line 522, in
__getattr__
raise AttributeError("%s.%s" % (self._username_, attr))
AttributeError: winmgmts:.Win32_IP4RouteTable
Итак, мой вопрос: что могло бы произойти, что лишило бы способности Python ссылаться на этот класс? заранее спасибо
Компьютер является Windows 7 64-битной
РЕДАКТИРОВАТЬ:
Чуть позже я заметил, что еще несколько строк не работают:
from win32com.client import GetObject
WMI = GetObject('winmgmts:')
processes = WMI.InstancesOf('Win32_Process') #Failure here