| 92 | } |
| 93 | |
| 94 | std::wstring WinSys::DeviceManager::GetDeviceRegistryPropertyString(const DeviceInfo& di, DeviceRegistryPropertyType type) { |
| 95 | std::wstring result; |
| 96 | result.resize(256); |
| 97 | |
| 98 | DWORD regType; |
| 99 | if (::SetupDiGetDeviceRegistryProperty(_hInfoSet.get(), (PSP_DEVINFO_DATA)&di.Data, static_cast<DWORD>(type), ®Type, |
| 100 | (BYTE*)result.data(), DWORD(result.size() * sizeof(wchar_t)), nullptr)) { |
| 101 | assert(regType == REG_SZ); |
| 102 | return result; |
| 103 | } |
| 104 | return L""; |
| 105 | } |
| 106 | |
| 107 | std::vector<std::wstring> WinSys::DeviceManager::GetDeviceRegistryPropertyMultiString(const DeviceInfo& di, DeviceRegistryPropertyType type) { |
| 108 | std::vector<std::wstring> result; |