а, все, разобрался. Наконец-то нашел нормальный пример:
Код:
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)