Помогите Найти Ошибку

Статус
Закрыто для дальнейших ответов.
12.12.2012
7
0
#1
Уже неделю маюсь.
По искав в интернети я нашел где находится этот сам безопасный режим в реестре (вот адрес HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot )....

Первая мысль появилась это удалить весь SafeBoot. Немного по экспериментировал с удалением убедился что эта идея работает. То есть безопасный режим не запускается...

Я написал вот такой код...
Код:
procedure OfBes;
var
reg: tregistry;
begin
reg:=TRegistry.Create;
reg.RootKey:=HKEY_LOCAL_MACHINE;
if Reg.KeyExists('SYSTEM\CurrentControlSet\Control\SafeBoot') then
begin
reg.MoveKey('SYSTEM\CurrentControlSet\Control\SafeBoot\M','System\CurrentControlSet\Control\SafeBoot\Minimal',false);
reg.CloseKey;
reg.MoveKey('SYSTEM\CurrentControlSet\Control\SafeBoot\N','System\CurrentControlSet\Control\SafeBoot\Network',false);
reg.CloseKey;
reg.DeleteValue('Win');
reg.CloseKey;
reg.free;
end
else
sleep(1);
end;
Но эта процедура почему та не удаляет этот SafeBoot.
При запуске программы, не дает ни каких ошибок...
 
12.12.2012
7
0
#2
Урааа разобрался... Я оказывается немного неправильно делал, вот нормальный код...
Код:
procedure Of111;
var
reg: tregistry;
begin
reg:=TRegistry.Create;
reg.RootKey:=HKEY_LOCAL_MACHINE;
if Reg.KeyExists('SYSTEM\CurrentControlSet\Control\SafeBoot') then
begin
reg.DeleteKey('SYSTEM\CurrentControlSet\Control\SafeBoot');
reg.CloseKey;
reg.free;
end
else
sleep(1);
end;
А во так эта процедура вызывается...

Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
Of111;
end;
 
Статус
Закрыто для дальнейших ответов.