Example #1
0
std::string IEServer::GetStatus() {
  LOG(TRACE) << "Entering IEServer::GetStatus";
  SYSTEM_INFO system_info;
  ::ZeroMemory(&system_info, sizeof(SYSTEM_INFO));
  ::GetNativeSystemInfo(&system_info);

  std::string os_version = FileUtilities::GetFileVersion("kernel32.dll");

  std::string arch = "x86";
  if (system_info.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64) {
    arch = "x64";
  }

  Json::Value build;
  build["version"] = this->version_;

  Json::Value os;
  os["arch"] = arch;
  os["name"] = "windows";
  os["version"] = os_version;
    
  Json::Value status;
  status["build"] = build;
  status["os"] = os;
  Response response;
  response.SetSuccessResponse(status);
  return response.Serialize();
}
Example #2
0
std::string IEServer::GetStatus() {
  SYSTEM_INFO system_info;
  ::ZeroMemory(&system_info, sizeof(SYSTEM_INFO));
  ::GetNativeSystemInfo(&system_info);

  OSVERSIONINFO os_version_info;
  ::ZeroMemory(&os_version_info, sizeof(OSVERSIONINFO));
  os_version_info.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
  ::GetVersionEx(&os_version_info);

  // Allocate only 2 characters for the major and minor versions
  // and 5 characters for the build number (+1 for null char)
  vector<char> major_buffer(3);
  _itoa_s(os_version_info.dwMajorVersion, &major_buffer[0], 3, 10);
  vector<char> minor_buffer(3);
  _itoa_s(os_version_info.dwMinorVersion, &minor_buffer[0], 3, 10);
  vector<char> build_buffer(6);
  _itoa_s(os_version_info.dwBuildNumber, &build_buffer[0], 6, 10);

  std::string major_version(&major_buffer[0]);
  std::string minor_version(&minor_buffer[0]);
  std::string build_version(&build_buffer[0]);
  std::string os_version = major_version + "." + minor_version + "." + build_version;

  std::string arch = "x86";
  if (system_info.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64) {
    arch = "x64";
  }

  Json::Value build;
  build["version"] = "2.21.0";

  Json::Value os;
  os["arch"] = arch;
  os["name"] = "windows";
  os["version"] = os_version;
    
  Json::Value status;
  status["build"] = build;
  status["os"] = os;
  Response response;
  response.SetSuccessResponse(status);
  return response.Serialize();
}
Example #3
0
std::string IEServer::GetStatus() {
  LOG(TRACE) << "Entering IEServer::GetStatus";
  SYSTEM_INFO system_info;
  ::ZeroMemory(&system_info, sizeof(SYSTEM_INFO));
  ::GetNativeSystemInfo(&system_info);

  OSVERSIONINFO os_version_info;
  ::ZeroMemory(&os_version_info, sizeof(OSVERSIONINFO));
  os_version_info.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
  ::GetVersionEx(&os_version_info);

  std::string major_version = StringUtilities::ToString(os_version_info.dwMajorVersion);
  std::string minor_version = StringUtilities::ToString(os_version_info.dwMinorVersion);
  std::string build_version = StringUtilities::ToString(os_version_info.dwBuildNumber);;
  std::string os_version = major_version + "." + minor_version + "." + build_version;

  std::string arch = "x86";
  if (system_info.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_AMD64) {
    arch = "x64";
  }

  Json::Value build;
  build["version"] = this->version_;

  Json::Value os;
  os["arch"] = arch;
  os["name"] = "windows";
  os["version"] = os_version;
    
  Json::Value status;
  status["build"] = build;
  status["os"] = os;
  Response response;
  response.SetSuccessResponse(status);
  return response.Serialize();
}