//下面是读取window xp的我的电脑图标的地址数据。
var
TheReg: TRegistry;
KeyName:string;
temp_Str:string;
ValueStr:string;
begin
TheReg := TRegistry.Create;
TheReg.RootKey:=HKEY_CLASSES_ROOT;
KeyName:='CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}{\DefaultIcon';
if TheReg.OpenKey(KeyName, True) then begin
ValueStr:=trim(TheReg.ReadString(''));
//如何读出默认的数据呢?小弟我没有读出来是不是写错了?
showmessage(ValueStr);//输出来看不到数据。如何才能读出来?
end;
end;//注册表中有一个数据是windows的默认值。小弟不能把默认的值读不出来。如何才能读出来呢?请帮助。
var
TheReg: TRegistry;
KeyName:string;
temp_Str:string;
ValueStr:string;
begin
TheReg := TRegistry.Create;
TheReg.RootKey:=HKEY_CLASSES_ROOT;
KeyName:='CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}{\DefaultIcon';
if TheReg.OpenKey(KeyName, True) then begin
ValueStr:=trim(TheReg.ReadString(''));
//如何读出默认的数据呢?小弟我没有读出来是不是写错了?
showmessage(ValueStr);//输出来看不到数据。如何才能读出来?
end;
end;//注册表中有一个数据是windows的默认值。小弟不能把默认的值读不出来。如何才能读出来呢?请帮助。
你把KeyName这个变量的值直接写在
if TheReg.OpenKey('*****', True) then begin 试试
procedure TForm1.Button2Click(Sender: TObject);
var
TheReg: TRegistry;
KeyName:string;
ValueStr:string;
begin
TheReg := TRegistry.Create;
TheReg.RootKey:=HKEY_CLASSES_ROOT;
KeyName:='CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}{\DefaultIcon';
if TheReg.OpenKey(KeyName, True) then
begin
ValueStr:=trim(TheReg.ReadString(''));
if ValueStr = '' then
ShowMessage('没数据!');
end;
end;