Skip to content

Commit

Permalink
WbemLocator fixed for cpp20
Browse files Browse the repository at this point in the history
  • Loading branch information
randaz81 committed Nov 8, 2023
1 parent 53bf0ce commit 2b417a0
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions src/libYARP_os/src/yarp/os/SystemInfo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -871,10 +871,16 @@ SystemInfo::ProcessInfo SystemInfo::getProcessInfo(int pid)
hr = CoCreateInstance(CLSID_WbemLocator, 0, CLSCTX_INPROC_SERVER, IID_IWbemLocator, (LPVOID*)&WbemLocator);
if (WbemLocator != nullptr) {
//connect to the WMI
hr = WbemLocator->ConnectServer(L"ROOT\\CIMV2", nullptr, nullptr, 0, 0, 0, 0, &WbemServices);
BSTR val1 = SysAllocString(L"ROOT\\CimV2");
hr = WbemLocator->ConnectServer(val1, nullptr, nullptr, 0, 0, 0, 0, &WbemServices);
SysFreeString(val1);
if (WbemServices != nullptr) {
//Run the WQL Query
hr = WbemServices->ExecQuery(L"WQL", L"SELECT ProcessId, CommandLine FROM Win32_Process", WBEM_FLAG_FORWARD_ONLY, nullptr, &EnumWbem);
BSTR val2 = SysAllocString(L"WQL");
BSTR val3 = SysAllocString(L"SELECT ProcessId, CommandLine FROM Win32_Process");
hr = WbemServices->ExecQuery(val2, val3, WBEM_FLAG_FORWARD_ONLY, nullptr, &EnumWbem);
SysFreeString(val2);
SysFreeString(val3);
// Iterate over the enumerator
if (EnumWbem != nullptr) {
IWbemClassObject* result = nullptr;
Expand Down

0 comments on commit 2b417a0

Please sign in to comment.