在系统 HKEY_CURRENT_USER 根目录下
1、有控制台Console目录,在其下有很多项值,如ColorTable01等,我应该怎么读取它的数据呢?
2、我在控制台Console目录下面又创建了一个database项,并给databasename赋值为"data123",这我又应该用程序将它读取出来呢?
读出的数据我都要字符串数据。
1、有控制台Console目录,在其下有很多项值,如ColorTable01等,我应该怎么读取它的数据呢?
2、我在控制台Console目录下面又创建了一个database项,并给databasename赋值为"data123",这我又应该用程序将它读取出来呢?
读出的数据我都要字符串数据。
var
Reg: TRegIniFile;
begin
if Length(NameofKey.Text) or Length(ValueforKey.Text) <=0 then
Showmessage('Either the key name or value is missing.')
else begin
Reg:=TRegIniFile.Create('MyApp');
try
Reg.RootKey:=HKey_Local_Machine; // Section to look for within the registry
if not Reg.OpenKey(NameofKey.Text,False) then
if MessageDlg('The specified key does not exist, create it?' ,Mtinformation,[mbYes,mbNo],0)=mryes then
begin
Reg.CreateKey(NameofKey.Text);
if not Reg.OpenKey(NameofKey.Text,False) then
ShowMessage('Error in Opening Created Key')
else
Reg.WriteString('Main Section','Value1',ValueForKey.Text);
end
else
Reg.WriteString('Main Section','Value1',ValueForKey.Text);
finally Reg.Free;
end;
end;
TRegistry.ReadString
with registertemp do
begin
RootKey := HKEY_CURRENT_USER;
OpenKey('software\odbc\odbc.ini\odbc data sources', true)
stemp:=readstring('')
end;
我来总结一下或许对后来看到本贴的哥们有所帮助!
(特精简明了的写入程序在此略过!),在这里就专门说读取
var reg:TRegIniFile;
begin
try
reg:=TRegIniFile.Create;
Reg.RootKey:=HKEY_CURRENT_USER;
if (Reg.OpenKey('CurrentDb',true)) then begin
edit5.Text:=reg.ReadString('','',''); //读取根部默认数据
edit6.Text:=reg.ReadString('','自定义关键字英文','');//读取根部自定义数据
edit4.Text:=reg.ReadString('database','DBName','');//读取CurrentDb下的新建值database项中的DBName数据
end else
edit4.Text:='no find'; Reg.CloseKey;
finally
Reg.Free;
end;