同上

解决方案 »

  1.   

    用WriteInteger和ReadInteger,因为HKEY_LOCAL_MACHINE是一个整型常量.
      

  2.   

    var
      regname : String;
      reg : TRegistry;
      itemp : LongInt;
    begin
      try
        regname := '\Software\Microsoft\windows\CurrentVersion\Internet Config';
        reg := TRegistry.Create;
        with reg do
        begin
          RootKey :=HKEY_CURRENT_CONFIG;
          if OpenKey(regname,True) then
            if ValueExists(IntToStr(AID)) then
            begin
              WriteInteger(IntToStr(AID),ACypherVal);
              Result := 1;
            end
            else
            begin
              //置初始值
              itemp := NumEncypher(AID)+ADefVal;
              WriteInteger(IntToStr(AID),itemp);
              Result := 0;
            end
          else
            Result := -1;
          CloseKey;
          Free;
        end;
      except
        Result := -1;
      end;
    end;