程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> 關於讀寫注冊表二進制數據的問題

關於讀寫注冊表二進制數據的問題

編輯:Delphi

  在Delphi的幫助文件中得到了關於注冊表二進制數據的讀寫函數聲明,但是幫助文件中並沒有給出例子.現在我給出例程.

  1.讀取二進制數據
  function ReadBinaryData(const Name: String; var Buffer; BufSize: Integer): Integer;
  從當前鍵值返回一個二進制數據.如果成功則返回所需數據,所需數據保存在buffer中,而返回的integer值表示返回數據的大小(byte).
  

  2.存儲二進制數據
  procedure WriteBinaryData(const Name: String; var Buffer; BufSize: Integer);
  存儲一個二進制數據到指定的鍵值.

  例程:
  procedure TForm1.Button1Click(Sender: TObject);
  var
     reg:TRegistry;               {聲明Regstry對象}
     typ:TRegDataType;       {注冊表數據類型.常用的有字符串類型(rdString)、數值類型(rdInteger)、二進制類型(rdBinary)}
     str:string;                       {用於顯示操作信息}
     i:integer;                        {注冊表的數據大小,以字節為單位}
    vv:integer;                      {注冊表的數據內容}
  begin
     reg:=TRegistry.Create;                                       {創建注冊表對象}
     reg.RootKey :=HKEY_LOCAL_MacHINE;         {設置根鍵}
     reg.OpenKey ('MYSOFT',TRUE);                       {打開主鍵}
     typ:=reg.GetDataType('ccc');                             {得到所需數據的類型}
     i:=reg.GetDataSize('ccc');                                   {得到所需數據的大小}
     case typ of                                                        {根據數據類型顯示提示信息}
       rdstring:
          str:='This is String Type';
       rdInteger:
          str:='This is Integer Type';
       rdBinary:
          str:='This is Binary Type';
     else
       str:='This is Unknown Type';
     end;
     memo1.Lines.Add(str);
     memo1.lines.Add(inttostr(i));                     {提示信息結束}
     reg.ReadBinaryData('ccc',vv,i);                 {讀取數據的內容,函數返回數據內容的大小[本例中未寫出返回值]}
     memo1.Lines.add(inttostr(vv));
     vv:=1;                                                      {設定數據內容vv=1}
     reg.WriteBinaryData('ccc',vv,i);                  {把數據內容寫入注冊表中}
     reg.CloseKey;                                           {關閉主鍵}
     reg.Free;                                                 {釋放注冊表對象}
  end;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved