Илья:Ну даже не знаю. А какие именно методы достойны быть непосредственно в составе базового типа? В вашей реализации как минимум не хватает обработки REAL, BOOLEAN и SET. А IntList лишний, хотя может и полезный.
С другой стороны, сообщения позволяют комфортно жить в многопоточной обстановке, а Section.ok - нет.
И ещё. Я расчитывал, что Registry.Open("") откроет настройки, хранящиеся в файле по умолчанию, который в каждой системе свой (и может даже и не файл вовсе).
И вообще, в моём варианте пользователь обычно не будет иметь дел с сообщениями - всё завёрнуто в RegistryUtils (который ещё доработать надо).

Что касается замечаний.
1. Добавить процедуры Handle. Не будем повторять ошибок Files
2. Привести список процедур Get/Set в соответствие базовым типам КП.
3. Интерфейс процедур Get. Вот тут вопрос. Вид Get(... OUT res...) не годится в любом случае - что он вернёт, если значение не найдено? Тут либо Get(... VAR res...) и передавать значение по умолчанию, либо Get(... default ...) : res. По мне так процедуры-функции удобнее
4. Процедура Write. Кажется если ей передать несколько объектов одного типа - будет сохранён только последний.

Александр:Ну, в общем, да. Шизеем потихоньку