Перейти к содержанию
СофтФорум - всё о компьютерах и не только

дайте пример для отключения сервисов в XP


Рекомендуемые сообщения

собрался писать что-то стоящее после 3х занятий в инсте на Delphi. как менять ключи реестра я разобрался а вот как отключать сервисы - нет. Просто хочу написать под себя твикер - а на этом шаге застопорился :blink: а еще подскажите пожалуйста правильно(в смысле нет ли тут чего лишнего) ли дело написано а то я с Delphi не очень

                        program Project1;

{$APPTYPE CONSOLE}

uses

SysUtils, Registry, Windows;

var

Reg: TRegistry;

begin

Reg:=TRegistry.Create;

try

  Reg.RootKey:=HKEY_LOCAL_MACHINE;

  If Reg.OpenKey('\SOFTWARE\Microsoft\dfrg\BootOptimize\Function\'+

'{enabled}', True) then

  begin

    Reg.WriteString('','y');

    Reg.CloseKey;

  end;

  finally

Reg.Free;

end;

end.

Изменено пользователем Chega
Ссылка на комментарий
Поделиться на другие сайты

все, с сервисами разобрался :)

OpenService

DeleteService

остается только вопрос о целесообразности кода для правки реестра...

Ссылка на комментарий
Поделиться на другие сайты

да я не циклю а поднимаю тему ;) а если учесть то что в дельфях я пока-что ноль - хотел поинтересоваться у людей разбирающихся получше меня.

Ссылка на комментарий
Поделиться на другие сайты

Chega

Код не совсем верный...

Насколько я понял, ты хочешь изменить в ветви реестра "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\dfrg\BootOptimizeFunction" значение параметра "Enable" в "y".

Твой же код создаст ветвь "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\dfrg\BootOptimize\Function\{Enabled}", а в этой ветви параметру "(Default)" присвоит значение "y".

Неверно:

1) Запись 'a'+'b' дает лишь строку 'ab', поэтому вариант записи

Reg.OpenKey('\SOFTWARE\Microsoft\dfrg\BootOptimize\Function\'+'{enabled}', True)

эквивалентен

Reg.OpenKey('\SOFTWARE\Microsoft\dfrg\BootOptimize\Function\{enabled}', True)

2) Первое значение, которое необходимо передать функции WriteString - название параметра в текущей ветви. Т.к. оно у тебя пустое, то значение "y" присвоится параметру "(default)".

Пример корректного кода:

var Reg: TRegistry;begin Reg:=TRegistry.Create; try   Reg.RootKey:=HKEY_LOCAL_MACHINE;   If Reg.OpenKey('\SOFTWARE\Microsoft\dfrg\BootOptimizeFunction', True) then     begin       Reg.WriteString('Enable','y');       Reg.CloseKey;     end; finally   Reg.Free; end;end;
Ссылка на комментарий
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...