uses registry;procedure TForm1.Button1Click(Sender: TObject); var Reg: TRegistry; begin Reg := TRegistry.Create; try Reg.RootKey := HKEY_LOCAL_MACHINE;//根目录 if Reg.OpenKey('\HARDWARE\ACPI\FACS',false) then //打开子项 begin if Reg.ValueExists('XXOO') then //判断项目 Reg.DeleteValue('XXOO')'; //删除 Reg.CloseKey; //关闭子项 end; finally Reg.Free; end; end;
var
Reg: TRegistry;
begin
Reg := TRegistry.Create;
try
Reg.RootKey := HKEY_LOCAL_MACHINE;//根目录
if Reg.OpenKey('\HARDWARE\ACPI\FACS',false) then //打开子项
begin
if Reg.ValueExists('XXOO') then //判断项目
Reg.DeleteValue('XXOO')'; //删除
Reg.CloseKey; //关闭子项
end;
finally
Reg.Free;
end;
end;
没有循环所有节点的,何况节点有成千上百W级别的,循环它做啥
如果是要取得某节点下的所有项目值,用
reg.GetValueNames(Memo1.Lines);然后循环Memo1.Lines就是了,想删除那个就删除那个