如何获得HWID

时间:2017-06-18 11:32:55

标签: c++ windows hwid

我想通过HWID课程获得hwProfileInfo,但它返回给我,我无法将WCHAR [39]转换为字符串。

string getHWID(){
  string hardware_guid

  HW_PROFILE_INFO hwProfileInfo;
  GetCurrentHwProfile(&hwProfileInfo);
  hardware_guid = hwProfileInfo.szHwProfileGuid;

  return hardware_guid;
}

我试过这种方式,但它只是回复了我" {"

hardware_guid = (char*)hwProfileInfo.szHwProfileGuid;

我知道谷歌还有更多方法,但我没有找到任何可行的变体。可能有一些人,可以说100%的方法吗?

2 个答案:

答案 0 :(得分:0)

有两种方法: 1st您可以使用std :: wstring,它使用wchar_t而不是std :: string,它使用char。 您可以使用GetCurrentHwProfileA而不是GetCurrentHwProfileW,如果定义了UNICODE,则将其定义为GetCurrentHwProfile。

答案 1 :(得分:-3)

这是我的问题的答案。

string getHWID(){  
  HW_PROFILE_INFO hwProfileInfo;
  GetCurrentHwProfile(&hwProfileInfo);
  wstring hwidWString = hwProfileInfo.szHwProfileGuid;  
  string hwid(hwidWString.begin(), hwidWString.end());

  return hwid;
}