Пример #1
0
// Throw std::runtime_error with an error message.
void ThrowRuntimeError(_In_ const std::basic_string<TCHAR> &Message) {
  const auto errorCode = ::GetLastError();
  const auto errorMessage = GetWin32ErrorMessage(errorCode);
  char msg[1024];
#if UNICODE
  static const char FORMAT_STR[] = "%S : %lu(0x%08x) : %S";
#else
  static const char FORMAT_STR[] = "%s : %lu(0x%08x) : %s";
#endif
  StringCchPrintfA(msg, _countof(msg), FORMAT_STR, Message.c_str(), errorCode,
                   errorCode, errorMessage.c_str());
  throw std::runtime_error(msg);
}
Пример #2
0
Win32Exception::Win32Exception(const char *extraMsg)
    : std::runtime_error(GetWin32ErrorMessage(extraMsg, GetLastError()))
{
}
Пример #3
0
// Display an error message with an error message of the current error code.
void PrintErrorMessage(_In_ const std::basic_string<TCHAR> &Message) {
  const auto errorCode = ::GetLastError();
  const auto errorMessage = GetWin32ErrorMessage(errorCode);
  ::_ftprintf_s(stderr, _T("%s : %lu(0x%08x) : %s\n"), Message.c_str(),
                errorCode, errorCode, errorMessage.c_str());
}