======================================================
注:本文源代码点此下载
======================================================
delphi的tregistry注册表类方法详解 收藏
●getdatainfo方法
function getdatainfo(const valuename:string;var value:tregdatainfo):boolean;
tregdatatype=(rdunknown,rdstring,rdexpandstring,rdexpandstring,rdinterger,rdbinary);
tregdatainfo=record
regdata:tregdatatype;数据类型
datasize:integer;数据大小
end
valuename:和当前键关联的数据值名称
value:返回数据的信息,如为rdstring和rdexpandstring类型,则数据大小包括字符串未尾的空结束字符。
如果成功返回true,失败返回false,并且value的值为zeros
rdexpandstring:是一个包含环境变量的字符串;如“%path%”。
●createkey方法
function createkey(const key:string):boolena;
新建一个名为key的键,key可以为绝对的或相对的名字,绝对名用反斜杠“\”开头,相对名是新建一个当前键的子键。新建没有值。
成功返回true,否则返回false,如果该键已存在将不产生效果。
●deletekey方法
function deletekey(const key:string):boolean;
删除一个键及相关联的数据,在win95中子键也将被删除,nt中子键必须一个个删除。
●deletevalue方法
function deletevalue (const name:string):boolean;
删除当前键中指定的一个数据值name。
●getdatasize方法
function getdatasize(const valuename:string):integer;
返回当前键中一个指定数值valuename数据的大小。
●getdatatype方法
function getdatatype(const valuename;string):tregdatatype;
返回当前键中一个指定数值valuename数据的类型。
●getkeyinfo方法
function getkeyinfo(var value:tregkeyinfo):boolean;
返回当前键的信息,在于value中。
tregkeyinfo=record
maxsubkeylen:integer;子键名的最长值(字节)
numvalues:integer;键值的数量
maxvaluelen;最长的键值名的长度
filetime:tfiletime;最后一次更改的时间
end;
●getkeynames方法
procedure getkeynames(strings:tsrtings);
返回当前键所有子键的名子列表串。
●getvaluenames
procedure getvaluenames(strings:tstrings);
返回当前键所有键值名的列表串。
●hassubkeys方法
function hassubkeys:boolean;
判断当前键是否有子键,有返回true,否则返回false。
●keyexists方法
function keyexists(const key:string):boolean;
判断指定的键是否存在。
●loadkey方法
function loadkey(const key,filenmae:string):boolean;
在根键下新建
从一个文件中加载注册信息到子键中,文件注册信息中包含数据值名、子键和数据。
loadkey使创建一个键单一化,子键,键值和数据在一人操作中完成,所有这些称为一组,和单独地创建它们不同应用程序可以在一个文件中读取一组数据,这在用户运行中重新设置有特别的用处。
key为要创建子键的名子
filename:为文件的位置,所指定的文件必须为以前用savekey函数或regsavekey api函数所建立的,文件名不能包括扩展名。
●openkey方法
function openkey(const key:string;cancreate:boolean):boolean;
使用该函数可以指定一个键作为当前键,如果键为nil,则当前键 将设置为根键。
cancreate决定是否在指定键不存在时创建该键,该函数创建的键的键值将不确定。
如果成功地打开或创建,该函数返回true。
●openkeyreadonly方法
function openkeyreadonly(const key: string): boolean;
以只读的方式打开key值指定的键。
●closekey方法
procedure closekey;
当不再使用一个键时应用该方法关闭该键。
●movekey方法
procedure movekey(const oldname, newname: string; delete: boolean);
该方法移动或复制一个键到一个新的位置,并把键的名子改为newname。
在win95/98下该的子键和数据将被一起移动或复制到新的位置,在nt下子键必须用movekey明确的移动或自制。
●读取数据的方法
function readbinarydata(const name: string; var buffer; bufsize: integer):integer;
function readbool(const name: string): boolean;
function readcurrency(const name: string): currency;
function readdate(const name: string): tdatetime;
function readdatetime(const name: string): tdatetime;
function readfloat(const name: string): double;
function readinteger(const name: string): integer;
function readstring(const name: string): string;
function readtime(const name: string): tdatetime;
以上方法从当前主键读取相应数据类型的键值的数据,如果类型不匹配将产生一个异常。
●registryconnect方法
function registryconnect(const uncname: string): boolean;
与另一台计算机的注册表建立连接,在建立连接前应将rootkey属性设为hkey_users或hkey_local_machine。
uncname是另一台计算机的名子。格式如:\\computername
假如uncname为nil,将打开本地计算机。
======================================================
在最后,我邀请大家参加新浪APP,就是新浪免费送大家的一个空间,支持PHP+MySql,免费二级域名,免费域名绑定 这个是我邀请的地址,您通过这个链接注册即为我的好友,并获赠云豆500个,价值5元哦!短网址是http://t.cn/SXOiLh我创建的小站每天访客已经达到2000+了,每天挂广告赚50+元哦,呵呵,饭钱不愁了,\(^o^)/