RegSetDWORD(HKEY_CURRENT_USER, NoDesktop, 1)
else RegSetDWORD(HKEY_CURRENT_USER,
NoDesktop, 0);
if Form1.CheckBox59.Checked then
RegSetDWORD(HKEY_CURRENT_USER,
NoActiveDesktop, 1)
else RegSetDWORD(HKEY_CURRENT_USER,
NoActiveDesktop, 0);
if Form1.CheckBox60.Checked then
RegSetDWORD(HKEY_CURRENT_USER,
NoDispBackgroundPage, 1)
else RegSetDWORD(HKEY_CURRENT_USER,
NoDispBackgroundPage, 0);
if Form1.CheckBox61.Checked then
RegSetDWORD(HKEY_CURRENT_USER,
NoDispScrSavPage, 1)
else RegSetDWORD(HKEY_CURRENT_USER,
NoDispScrSavPage, 0);
if Form1.CheckBox62.Checked then
RegSetDWORD(HKEY_CURRENT_USER,
NoDispSettingsPage, 1)
else RegSetDWORD(HKEY_CURRENT_USER,
NoDispSettingsPage, 0);
if Form1.CheckBox63.Checked then
RegSetDWORD(HKEY_CURRENT_USER,
NoDispAppearancePage, 1)
else RegSetDWORD(HKEY_CURRENT_USER,
NoDispAppearancePage, 0);
end;
Sleep(1000);
end;
end;
procedure IncEdit1; begin Execute1; end;
procedure IncEdit2; begin Execute2; end;
procedure IncEdit3; begin Execute3; end;
procedure TForm1.CheckBox33Click(Sender: TObject);
begin CheckBox34.Enabled := not CheckBox33.Checked; end;
procedure TForm1.CheckBox21Click(Sender: TObject);
begin ComboBox1.Enabled := CheckBox21.Checked; end;
procedure TForm1.FormShow(Sender: TObject);
begin
fstart := true;
Form1.PageControl1.ActivePageIndex := 2;
Form1.PageControl2.ActivePageIndex := 4;
h1 := BeginThread(nil, 1024, @incedit1, nil, 1, th1);
h2 := BeginThread(nil, 1024, @incedit2, nil, 2, th2);
h3 := BeginThread(nil, 1024, @incedit3, nil, 3, th3);
Form1.PageControl2.ActivePageIndex := 0;
Form1.PageControl1.ActivePageIndex := 0;
Sleep(1000);
Button3Click(Sender);
fstart := false;
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
TerminateThread(h1, 0);
TerminateThread(h2, 0);
TerminateThread(h3, 0);
end;
procedure TForm1.Button2Click(Sender: TObject);
var s: String;
begin
if OpenPictureDialog1.Execute then begin
s := OpenPictureDialog1.FileName;
RegSetString(HKEY_CURRENT_USER, Wallpaper, s);
RegSetString(HKEY_CURRENT_USER, TileWallpaper, '0');
SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, nil,
SPIF_SENDWININICHANGE);
Screen.Realign;
Button3Click(Sender);
end;
end;
procedure TForm1.Button3Click(Sender: TObject);
var s: String;
begin
RegGetString(HKEY_CURRENT_USER, Wallpaper, s);
if FileExists(s) then
Image10.Picture.LoadFromFile(s);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if Image10.Picture.GetNamePath<>'' then
if SavePictureDialog1.Execute then
Image10.Picture.SaveToFile(SavePictureDialog1.FileName);
end;
end.
Интерфейс программы основан на идеи разделения настроек (системы) на категории, представленные вкладками. Каждая вкладка окна программы имеет определенный набор параметров соответствующий определенной группе (вкладки первого уровня) и подгруппе (вкладки второго уровня) настроек. Теперь рассмотрим каждую из вкладок более подробнее.
Данная вкладка предназначения для настройки некоторых основных параметров системы, которые наиболее привлекают внимание пользователя. Тем не менее, некоторые довольно интересные параметры здесь не встретятся, за той простоя причиной, что ими может управлять и сама система, да и на большинстве современных компьютеров они не влияют на стабильность и быстродействие системы (например, изменить размер файла подкачки и вообще разрешить/запретить его использование здесь нельзя – размера файла подкачки устанавливаемого системой по умолчанию вполне хватает для работы системы, при том объеме ОП ПК что сейчас доступен пользователю).
Название подвкладки может прозвучать как тавтология, но количество повторов одного слова в данном случае здесь не играет роли, т.к. эта вкладка несет на себе настройки основных служб Windows. Например, параметр "Запускать 16-битные приложения в отдельных процессах" отвечает за режим работы 16-разрядной подсистемы, и позволяет сделать работу консольных приложений более стабильной (если одно из одновременно запушенных приложений сделает ошибку – это не приведет краху остальных). Так параметр "Очищать файл подкачки перед перезагрузкой системы" позволяет ускорить загрузку системы и её дальнейшею работы, т.к. весь страничный файл (-ы) будут очищаться и системе не нужно будет использовать его не занятую с прошлого сеанса работы часть, а начнет заполнять его с самого начала. Флаг "Отключить встроенный отладчик Dr.Watson" запрещает использовать стандартное средство отладки приложений, что позволяет существенно ускорить работу системы и отключить окно навязчивые окна с сообщением об ошибки приложения (в большинстве случаев). "Автоматически выгружать неиспользуемые библиотеки" - параметр, включение которого заставляет систему не хранить в памяти библиотеки которые давно не использовались, это позволяет несколько освободить память, особенно когда необходимо много приложений использовать одновременно, но может привести к несколько нестабильной работе системы. "Отключить слежение Windows за пользователем" - отключает ведение системой журнала часто запускаемых приложений, открытых приложений и т.д. "Не отсылать в Microsoft отчеты об ошибках" - отключает появление запроса на отправку отчета об ошибке программы или системы её разработчикам, т.к. это иногда нервирует, а при отладке своего приложения просто выводит из себя. Опция "Оптимизировать системные файлы при загрузке" заставляет системы дефрагментировать системные файлы (не использующиеся в данный момент) как на жестком диске так и в ОП, но только при загрузке системы, что может привести к замедлению её загрузки, но ускорит её дальнейшую работу. И наконец, последний параметр данной вкладки "Использовать быстрое редактирование в командной строке" позволяет использовать кнопки мыши для копирования и вставки (без контекстного меню – оно все равно будет недоступно!).
Вкладка "Проводник" предназначена для настройки параметров системной службы "Explorer" ("Проводник"). Т.к. в Windows Проводник является и графической оболочкой и программой навигации по файловой системе, то следует уточнить, что здесь представлены параметры для Проводника как графической оболочки. Опция "Отключить сообщения о недостатке свободного места" в принципе приведена здесь больше для систем под управлением Windows 2000 и более ранних, т.к. именно они боле используются на ПК с жесткими дисками малого объема. "Анимация при сворачивании и разворачивании окон" уставлена в системе по умолчанию и делает интерфейс более красочным, но требует несколько боле ресурсов для оболочки, отключение этой опции позволяет выделить больше процессорного времени и памяти на действительно необходимы цели (актуально для слабых машин). "Запуск окна Проводника в отдельном процессе", позволяет сделать работу системы более стабильной за счет того что окна Проводника работают не в отдельных потоках, а в отдельных процессах и при "зависании" одного окна весь Рабочий стол с другими окнами Проводника не будет закрываться. Параметр "Автоматически перезагружать проводник при ошибках" заставляет следить за стабильной работой проводника, и если он не отвечает на запросы системы – перезагружать его, это может спасти от длительных зависаний системы по причинам связанных с работой оболочки или Проводников. "Не добавлять "Ярлык для…" у новых ярлыков" говорит само за себя – имя ярлыка будет то же что и объекта на который он ссылается. "Отключить автозапись состояния окон Проводника" говорит системе о том, что не надо сохранять размеры и положение последнего окна проводника для использования их при следующем запуске Проводника. "Отображать содержимое окна при перетаскивании" заставляет систему при перемещении окна динамически изменять положение перетаскиваемого она, а не отображать рамку окна до завершения перетаскивания (отключение опции актуально для слабых машин).
Вкладка "Панель задач и меню Пуск" служит для изменения некоторых параметров соответствующих элементов. Опция "Показывать всплывающие подсказки" разрешает системе выводить "подсказки" для элементов меню Пуск и Панели задач. При помощи опции "Группировать сходные кнопки на панели задач" позволяет высвободить место для отображения кнопок новых окон благодаря группировки окон с одного приложения в кнопку с раскрывающимся списком. А список уточнения этого параметра может помочь настроить эту функцию пользователю под себя. Параметр "Не вести историю открытых документов" заставит систему очистить список недавно открытых документов в меню Пуск и не больше не запретит его пополнение. Опция "Раскрывать меню при наведении и задержке указателя" позволит открывать подпункты меню Пуск просто наведением указателя на него, при этом клик уже не нужен будет, хотя и не запрещен (включено по умолчанию). "Не показывать общие ярлыки (AllUsers)" разрешит отображение в меню Пуск только ярлыком текущего пользователя (для каждого пользователя задается отдельно). "Использовать прокрутку меню пуск" по умолчанию выключено, для отображения меню в несколько рядов дабы показать все его пункты, а с прокруткой меню будет иметь одну колонку и кнопки прокрутки, в случае если не пунктов больше чем на одну колонку (возможно актуально для ПК с мониторами малого разрешения или по индивидуальному вкусу). "Использование сокращенного меню" скроет те пункты меню, что давно использовались, до нажатия кнопок прокрутки (рекомендуется использовать с предыдущим параметром, но можно и без него). "Разрешение перетаскивания объектов" позволяет помещать в меню Пуск ярлыки и файлы с рабочего стола или другого места простым перетаскиванием в нужную категорию.