Powershell Get-WmiObject generic-failure

问题描述

我正在为 wmi 查询(在管理员 Powershell 中运行)而苦苦挣扎,该查询因一般故障而失败...

Get-WmiObject -Class win32_pnpdevice

结果:

Get-WmiObject : Generic failure At line:1 char:14
+ Get-WmiObject <<<<  -Class win32_pnpdevice
    + CategoryInfo          : InvalidOperation: (:) [Get-WmiObject],ManagementException
    + FullyQualifiedErrorId : GetWMIManagementException,Microsoft.PowerShell.Commands.GetWmiObjectCommand

这发生在 Windows 10 IoT、Windows 10 1809 Enterprise 和 Windows Embedded S7 上。 对于 Windows Server 2016,查询工作正常...

我已经尝试用

修复 wmi
net stop winmgmt
winmgmt /salvagerepository %windir%\System32\wbem
winmgmt /resetrepository %windir%\System32\wbem
net start winmgmt

并且还重命名了 C:\Windows\System32\wbem 中的存储库文件夹并重建存储库。但查询仍然无效。

通过python调用查询会带来更多的错误代码

>>> import wmi
>>> w = wmi.WMI()
>>> pnp = w.Win32_PnPDevice()
Traceback (most recent call last):
  File "C:\Users\Engineering\AppData\Local\Programs\Python\python37\lib\site-packages\wmi.py",line 880,in query
    return self._namespace.query(wql,self,fields)
  File "C:\Users\Engineering\AppData\Local\Programs\Python\python37\lib\site-packages\wmi.py",line 1072,in query
    return [ _wmi_object(obj,instance_of,fields) for obj in self._raw_query(wql) ]
  File "C:\Users\Engineering\AppData\Local\Programs\Python\python37\lib\site-packages\wmi.py",in <listcomp>
    return [ _wmi_object(obj,fields) for obj in self._raw_query(wql) ]
  File "C:\Users\Engineering\AppData\Local\Programs\Python\python37\lib\site-packages\win32com\client\dynamic.py",line 236,in __getitem__
    return self._get_good_object_(self._enum_.__getitem__(index))
  File "C:\Users\Engineering\AppData\Local\Programs\Python\python37\lib\site-packages\win32com\client\util.py",line 37,in __getitem__
    return self.__GetIndex(index)
  File "C:\Users\Engineering\AppData\Local\Programs\Python\python37\lib\site-packages\win32com\client\util.py",line 53,in __GetIndex
    result = self._oleobj_.Next(1)
pywintypes.com_error: (-2147217407,'OLE error 0x80041001',None,None)

有什么想法吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)