diff --git a/src/windows/windriver.h b/src/windows/windriver.h index c7b10140..1e162fc4 100644 --- a/src/windows/windriver.h +++ b/src/windows/windriver.h @@ -107,7 +107,8 @@ class Driver if (err == ERROR_SERVICE_ALREADY_RUNNING) return true; std::wcerr << "Starting MSR service failed with error " << err << " "; - const TCHAR * errorStr = _com_error(err).ErrorMessage(); + const _com_error comError{ (int)err }; + const TCHAR * errorStr = comError.ErrorMessage(); if (errorStr) std::wcerr << errorStr << "\n"; @@ -120,7 +121,8 @@ class Driver else { std::wcerr << "Opening service manager failed with error " << GetLastError() << " "; - const TCHAR * errorStr = _com_error(GetLastError()).ErrorMessage(); + const _com_error comError{ (int)GetLastError() }; + const TCHAR * errorStr = comError.ErrorMessage(); if (errorStr) std::wcerr << errorStr << "\n"; } @@ -130,7 +132,8 @@ class Driver else { std::wcerr << "Opening service manager failed with error " << GetLastError() << " "; - const TCHAR * errorStr = _com_error(GetLastError()).ErrorMessage(); + const _com_error comError{ (int)GetLastError() }; + const TCHAR * errorStr = comError.ErrorMessage(); if (errorStr) std::wcerr << errorStr << "\n"; } @@ -169,7 +172,8 @@ class Driver else { std::wcerr << "Opening service manager failed with error " << GetLastError() << " "; - const TCHAR * errorStr = _com_error(GetLastError()).ErrorMessage(); + const _com_error comError{ (int)GetLastError() }; + const TCHAR * errorStr = comError.ErrorMessage(); if (errorStr) std::wcerr << errorStr; } @@ -197,7 +201,8 @@ class Driver else { std::wcerr << "Opening service manager failed with error " << GetLastError() << " "; - const TCHAR * errorStr = _com_error(GetLastError()).ErrorMessage(); + const _com_error comError{ (int)GetLastError() }; + const TCHAR * errorStr = comError.ErrorMessage(); if (errorStr) std::wcerr << errorStr; }