Delphi. Учимся на примерах | страница 44
> end else begin
> reg:= TRegistry.Create;
> reg.RootKey:= HKEY_CURRENT_USER;
> reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\'+
> 'Policies\System', True);
> //Восстановить свойства экрана
> reg.WriteInteger('NoDispCPL', 0);
> reg.CloseKey;
> end;
> //Для опции "Заблокировать реестр":
> if CheckBox3.Checked then begin
> reg:= TRegistry.Create;
> reg.RootKey:= HKEY_CURRENT_USER;
> reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\' +
> 'Policies\System', True);
> //Заблокировать реестр
> reg.WriteInteger('DisableRegistryTools', 1);
> reg.CloseKey;
> end else begin
> reg:= TRegistry.Create;
> reg.RootKey:= HKEY_CURRENT_USER;
> reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\' +
> 'Policies\System', True);
> //открыть доступ к реестру
> reg.WriteInteger('DisableRegistryTools', 0);
> reg.CloseKey;
> end;
>end;
>procedure TForm1.FormCreate(Sender: TObject);
>begin
> reg:= TRegistry.Create;//открываем реестр
> //настройки для текущего пользователя
> reg.RootKey:= HKEY_CURRENT_USER;
> reg.OpenKey('SYSTEM\CurrentControlSet\Services\Cdrom', False); //открываем раздел
> if reg.ValueExists('Autorun') then //если ключ существует
> if reg.readinteger('autorun') = 1 //и если он равен 1,
> then //то устанавливаем флажок первой опции
> CheckBox1.Checked:= True;
> reg.CloseKey;//закрываем реестр
> //Таким же образом проверяем остальные опции
> //Для опции "Отключить свойства экрана":
> reg:= TRegistry.Create;
> reg.RootKey:= HKEY_CURRENT_USER;
> reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\' +
> 'Policies\System', False);
> if reg.ValueExists('NoDispCPL') then
> if reg.ReadInteger('NoDispCPL') = 1 then CheckBox2.Checked:= True;
> reg.CloseKey;
> //для опции "Заблокировать реестр":
> reg:= TRegistry.Create;
> reg.RootKey:= HKEY_CURRENT_USER;
> reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\' +
> 'Policies\System', False);
> if reg.ValueExists('DisableRegistryTools') then
> if reg.ReadInteger('DisableRegistryTools') = 1 then CheckBox3.Checked:= True;
> reg.CloseKey;
>end;
>end.
⊚ Все файлы проекта и исполняемый файл рассмотренной программы находятся на прилагаемом к книге компакт-диске в папке Chapter_12.
Глава 13
Тест
Постановка задачи
Разработать программу для тестирования знаний в разных областях. Пользователь должен ответить на несколько вопросов, которые случайным образом выбираются из общей базы вопросов. После того как пользователь ответил на все вопросы, программа должна высчитать и выдать результат прохождения теста — процент правильных ответов. Также необходимо дать возможность пользователю подключать внешние файлы, содержащие вопросы и варианты ответов к ним. Для того чтобы пользователь не смог прочитать правильные ответы, следует зашифровать файл с вопросами и ответами.