@@ -14,14 +14,14 @@ _WMI::_WMI() {
1414 auto res = CoInitializeSecurity (nullptr , -1 , nullptr , nullptr , RPC_C_AUTHN_LEVEL_DEFAULT, RPC_C_IMP_LEVEL_IMPERSONATE,
1515 nullptr , EOAC_NONE, nullptr );
1616 res &= CoInitializeEx (nullptr , COINIT_APARTMENTTHREADED);
17- res &= CoCreateInstance (CLSID_WbemLocator , nullptr , CLSCTX_INPROC_SERVER, IID_IWbemLocator, (LPVOID*) &locator);
18- if (locator ) {
19- res &= locator->ConnectServer (_bstr_t ( " ROOT\\ CIMV2" ), nullptr , nullptr , nullptr , 0 , nullptr , nullptr , &service);
20- if (service )
17+ res &= CoCreateInstance (__uuidof (WbemLocator) , nullptr , CLSCTX_INPROC_SERVER, IID_PPV_ARGS ( &locator) );
18+ if (SUCCEEDED (res) ) {
19+ res &= locator->ConnectServer (bstr_t ( L " ROOT\\ CIMV2" ), nullptr , nullptr , nullptr , 0 , nullptr , nullptr , &service);
20+ if (SUCCEEDED (res) )
2121 res &= CoSetProxyBlanket (service, RPC_C_AUTHN_WINNT, RPC_C_AUTHZ_NONE, nullptr , RPC_C_AUTHN_LEVEL_CALL,
2222 RPC_C_IMP_LEVEL_IMPERSONATE, nullptr , EOAC_NONE);
2323 }
24- if (! SUCCEEDED (res)) {
24+ if (FAILED (res)) {
2525 throw std::runtime_error (" error initializing WMI" );
2626 }
2727}
@@ -277,4 +277,4 @@ std::vector<std::string> query(const std::wstring& wmi_class, const std::wstring
277277} // namespace utils
278278} // namespace hwinfo
279279
280- #endif // HWINFO_WINDOWS
280+ #endif // HWINFO_WINDOWS
0 commit comments