in Source/RiderSourceCodeAccess/Private/RiderPathLocator/Win/RiderPathLocatorWin.cpp [77:100]
static bool EnumerateRegistryValues(HKEY Key, TArray<FString> &OutNames)
{
for (DWORD Index = 0;; Index++)
{
// Query the value
wchar_t ValueName[256];
DWORD ValueNameLength = sizeof(ValueName) / sizeof(ValueName[0]);
const LONG Result = RegEnumValue(Key, Index, ValueName, &ValueNameLength, nullptr, nullptr, nullptr, nullptr);
if (Result == ERROR_NO_MORE_ITEMS)
{
break;
}
if (Result != ERROR_SUCCESS)
{
return false;
}
// Add it to the array
OutNames.Add(ValueName);
}
return true;
}