а, все, разобрался. Наконец-то нашел нормальный пример:
Код:
Procedure EnumRegValues(RootHKEY.l, sKey.s)
Protected hKey.l
If RegOpenKeyEx_(RootHKEY, sKey, 0, #KEY_READ, @hKey) = #ERROR_SUCCESS ;
idx.l = 0
Repeat
ValueName.s = Space(511): ValueNameLen.l = Len(ValueName)
ValueData.s = Space(511): ValueDataLen.l = Len(ValueData)
Retval.l = RegEnumValue_(hKey, idx, @ValueName, @ValueNameLen, #Null, @dwType, @ValueData, @ValueDataLen)
If Retval <> #ERROR_SUCCESS
Break
EndIf
ValueName = Left(ValueName, ValueNameLen)
Select dwType
Case #REG_SZ
ValueData = Left(ValueData, ValueDataLen - 1)
Default
ValueData = "<Not REG_SZ>"
EndSelect
Debug(ValueName + " = " + ValueData)
idx = idx + 1
Until Retval <> #ERROR_SUCCESS
RegCloseKey_(hKey)
Else
Debug("RegOpenKeyEx fail")
EndIf
EndProcedure
EnumRegValues(#HKEY_LOCAL_MACHINE, "Software\Microsoft\Windows NT\CurrentVersion")
взял тут
жаль, что в PB нет прямых команд работы с реестром (или я просто не знаю о них?)
Отредактировано Goga (18.09.2021 10:32:41)