Всем доброго времени суток!
Кто сможет оказать помощь в написании программки? Нужно в делфи написать программку, используя реестр. Заранее спасибо за помощь.

Задание:
Написать программу, изменяющую фоновый рисунок (обои) рабочего стола. Предусмотреть возможность:
1. выбирать рисунок из файла *.bmp или заранее составленного списка файлов;
2. сохранения и загрузки списков файлов *.bmp;
3. предпросмотр картинки;
4. изменение позиции картинки (по центру, замостить, полный экран);
5. автоматическое изменение обоев по списку через определенный промежуток времени.
6. Обработать возможные исключительные ситуации.

Список должен включать в себя:
1. Имя файла *.bmp;
2. Позицию картинки (по центру, замостить, полный экран);
3. Полный путь до файла.

Указания:

Для доступа к реестру используется класс Tregistry (модуль Registry)
Необходимые свойства и методы класса:
1. Create/Free – создание/удаление экземпляра класса;
2. RootKey : HKey – корневая ветвь реестра (в данном случае HKEY_CURRENT_USER);
3. OpenKey(const Key: String; CanCreate: Boolean): Boolean – открытие ключа Key. Если ключ Key не существует и CanCreate=true, то он создается;
4. WriteString(const Name, Value: String) – запись строкового значения в ключ реестра;
5. CloseKey – закрытие текущего ключа с последующим сохранением;
6. Для изменения обоев после изменения реестра необходимо применить функцию:
SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, Nil, SPIF_SENDWININICHANGE ).

Для изменения файла обоев необходимо обращаться к следующим ключам и параметрам реестра:

Ключ
HKEY_CURRENT_USER\Control Panel\Desktop\ - данные о рабочем столе

Параметры ключа:
WallPaper : REG_SZ (строка) – путь до файла;
TileWallPaper : REG_SZ (строка) – «замостить» картинку;
WallPaperStyle : REG_SZ (строка) – стиль картинки.

Комбинации значений:
1. TileWallPaper = ‘0’
WallPaperStyle = ‘0’ – по центру;
2. TileWallPaper = ‘1’
WallPaperStyle = ‘0’ – «замостить»;
3. TileWallPaper = ‘0’
WallPaperStyle = ‘2’ – растянуть на полный экран.