注册表管理

来源:互联网 发布:ipad测试声场软件 编辑:程序博客网 时间:2024/05/22 15:32

 一.DELPHI把所有的注册表读写都封装在registry单元.

 

1.根键分类:

      a.HKEY-CLASSES-ROOT对WINDOWS每一个资源进行归类,这些资源是文件扩展名和COM组件的注册信息.

      b.HKEY-CURRENT-USER当前用户的一些具体信息.这些信息是当前登陆用户相关软件的配置.信息,参数.

      c.HKEY-LOCAL-MACHINE本机的软件,硬件,系统和安全性等信息.

      d.HKEY-USERS动态加载的用户配置文件和默认配置信息.

      e.KEY-CURRENT-CONFIG本地配置之久的一些配置.

2.注册表相关函数.

     function openkey(const key:string;cancreate:boolean):boolean;打开指定的主键.key表示主键,cancreate主键不存在是否创建,true为创建,false为不创建.函数调用成功返回true.cancreate使用true的时候可以省去createkey函数来创建主键.

     procedure writestring(const name,value:string);

   把一个字符串写入到指定的名称中.参数name表示名称,value表示要写入的键值.

   procedure writeinteger(const name:string;value:integer);

把一个整数值写入到指定的名称中.

function readstring(const name:string):string;

从指定的字符串类型的名称中读取键值.name表示名称,返回值为键值.

function readinteger(const name:string):integer;

从指定的整数类型的名称中读取键值,name表示键的名称,反回值为键值.

procedure closekey;关闭打开的注册表键.

============================================================

DEMO1(读取):

             uses registry;

procedure TForm1.button1click(sender:TObject);

var

  reg:Tregistry;

begin

  reg:=Tregistry.create;

 reg.rootkey:=HKEY-LOCAL-MACHINE;

 if reg.openkey('/software/microsoft/notepad',false) then

edit1.text:=reg.readstring('iffacename');

reg.closekey;

reg.destroy;

end;

 

//================================

demo2(写入)

uses 

      registry;

procedure Tform1.button2click(sender:Tobject);

var

  reg:Tregistry;

begin

  reg:=TRegistry.create;

  reg.rootkey:=HKEY-CURRENT-USER;

IF reg.openkey('/software/microft/notepa',false) then

reg.writestring('bitencrypt',edit2.text);

reg.closekey;

reg.destroy;

end;

原创粉丝点击