我在服务器版下试了,为什么用regedit.exe不能看注册表?出现
"注册表编辑已被管理员禁止 ",怎样才可以查看?!

解决方案 »

  1.   

    我在服务器版下试了,为什么用regedit.exe不能看注册表?出现
    "注册表编辑已被管理员禁止 ",怎样才可以查看?!
      

  2.   

    写一下你用regedit看注册表时,为什么看不成有没有什么提示,是否是注册表被锁或是regedit.exe被删除
      

  3.   

    运行 Regedit.exe 出现"注册表编辑已被管理员禁止 ",怎样才可以解锁?! 
      

  4.   

    win2000:Windows Registry Editor Version 5.00
    [Hkey_current_user\Software\microsoft\windows\currentversion\Policies\system]
    "DisableRegistryTools"=dword:00000000win98:
    REGEDIT4
    [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System]
    "DisableRegistryTools"=dword:00000000
      

  5.   

    用API访问可以,不过2k禁止了注册表,如果用TRegister来访问HKEY_LOCAL_MACHINE的话(非Administrator),会出问题,API就没有问题,我是说读注册表,写就根本没有权限,所以....后来试写,出错了,把全部程序写出来吧
    主要是加入异常处理。const
      SOpenKey = 'SoftWare\MySetting;
      SNode = 'NodeValue';
      HRootKey = HKEY_Local_Machine;procedure RaiseError(ErrorCode: Integer);
    begin
      if ErrorCode <> Error_Success then
        raise Exception.Create(SysErrorMessage(ErrorCode));
    end;procedure TForm1.Button1Click(Sender: TObject);  function GetDataSize(AKey: HKey; AValueName: string): Integer;
      var
        DataType: Integer;
      begin
        DataType := 0;
        if RegQueryValueEx(AKey, PChar(AValueName), nil, @DataType, nil,
          @Result) <> ERROR_SUCCESS then Result := -1;
      end;var
      Key: HKey;
      ErrorCode: Integer;
      BufSize, DataType: Integer;
      Buffer: Pointer;
      S: string;
    begin
      DataType := Reg_SZ;
      ErrorCode := RegOpenKeyEx(HRootKey, PChar(SOpenKey), 0, Key_Read, Key);
      RaiseError(ErrorCode);
      try
        BufSize := GetDataSize(Key, SNode);
        ErrorCode := RegQueryValueEx(Key, PChar(SNode),
          nil, @DataType, PByte(Buffer),  @BufSize);
        RaiseError(ErrorCode);
        S := PChar(Buffer);
        SetLength(S, BufSize);
        MessageBox(Handle, PChar(S), '', MB_OK);
      finally
        RegCloseKey(Key);
      end;  
    end;procedure TForm1.Button2Click(Sender: TObject);
    const
      SValue= 'Hello';  function WriteString(AKey: HKey; Name: string; Buffer: Pointer; Len: Integer): Integer;
      var
        DataType: Integer;
      begin
        DataType := Reg_SZ;
        Result := RegSetValueEx(AKey, PChar(Name), 0, DataType, Buffer, Len);
      end;var
      ErrorCode: Integer;
      Key: HKey;
    begin
      ErrorCode := RegOpenKeyEx(HRootKey, PChar(SOpenKey), 0, Key_Write, Key);
      RaiseError(ErrorCode);
      try
        ErrorCode := WriteString(Key, SNode, PChar(SValue), Length(SValue) + 1);
        RaiseError(ErrorCode);
      finally
        RegCloseKey(Key);
      end;
    end;