为什么c++ WMI不抓取数据?错误:0 xc0000005



我对WMI很陌生,我在这里遵循这个指南。

因此,我将该代码粘贴到指南中,并使用提供的查询运行它,没有任何问题。但是当我将查询更改为SELECT State FROM Win32_Service

时,我没有得到任何数据,只是错误代码0xC0000005,我认为这是权限错误?上面相同的查询在PowerShell中使用下面的命令工作得很好:

Get-WmiObject -Query "select State from Win32_Service"

What I've try

  • winrm quickconfig

怎么了?为什么我有麻烦从我的c++代码查询WMI ?

编辑:我找到了导致崩溃的行。我不知道为什么它会崩溃。

wcout << vtProp.bstrVal << endl;

我错过了这行代码

hr = pclsObj->Get(L"State", 0, &vtProp, 0, 0);

将第一个参数更改为要检索其值的属性。

最新更新