以下是我的程序,试了很多次,都不能删除run-\sysclient项 :(
是哪里有问题么?谢谢:)  myreg:=tregistry.Create;
  myreg.RootKey:=hkey_current_user;
  try
    if myreg.OpenKey('\Software\Microsoft\Windows\CurrentVersion\Run-',true) then
      strtmp:=myreg.ReadString('SysClient');
    if trim(strtmp)<>'' then
      begin
        if myreg.DeleteKey('SysClient') then
          showmessage('ok');
        myreg.OpenKey('\Software\Microsoft\Windows\CurrentVersion\Run',true);
        myreg.WriteString('SysClient',strtmp);
        myreg.closekey;
      end;  finally
    myreg.free;
  end;

解决方案 »

  1.   

    要用DeleteValue而不是DeleteKey
            if myreg.DeleteValue('SysClient') then
              showmessage('ok');
      

  2.   

    下面这句要改成
    if myreg.DeleteValue('SysClient') then
      showmessage('ok');
      

  3.   

    to sysu(死树):
    打开时没看见有回复,没想到慢了这么多。呵呵...