已知注册表的某项,想得到该项下所有 数值名称 和 数值数据 逐条显示在memo里 应该怎样写?不引用Registry单元,只用RegOpenKey,RegQueryValueEx等api该怎样写呢? 我对注册表不了解, 一点头绪也没有,大侠帮忙!谢谢
解决方案 »
- 真的不好意思呀!...由於該問題仍未解決.....所以煩請各位再幫幫忙!...謝謝!
- fastreport如何作出象excel那样的表格来?在线等!解决马上揭贴!
- PageControl1改变颜色的最简单方法是?
- 以下代码在作为application正常,但在webservice出错!为什么?
- Delphi中如何接收到计算机的串口信息,有无空间?
- 关于TADOQuery的一个问题。
- MIDAS应用服务器method参数错误,为什么???
- 如何接收对方发送的数据(未知对方使用哪个端口发送)?
- 请问各位:如何将DBGrid的中的内容读入到二维数组中
- 程序间传递消息???
- 如何用delphi 7做一个过磅程序,或者哪里有相关资料
- Win7 下DELPHI如何通过进程名获取路径?
function RegEnum(RootKey: HKEY; Name: String; var ResultList: String; const DoKeys: Boolean): boolean;
var
i: integer;
iRes: integer;
s: String;
hTemp: HKEY;
Buf: Pointer;
BufSize: Cardinal;
begin
Result := False;
ResultList := '';
if RegOpenKeyEx(RootKey, PChar(Name), 0, KEY_READ, hTemp) = ERROR_SUCCESS then
begin
Result := True;
BufSize := 1024;
GetMem(buf, BufSize);
i := 0;
iRes := ERROR_SUCCESS;
while iRes = ERROR_SUCCESS do
begin
BufSize := 1024;
if DoKeys then
iRes := RegEnumKeyEx(hTemp, i, buf, BufSize, nil, nil, nil, nil)
else
iRes := RegEnumValue(hTemp, i, buf, BufSize, nil, nil, nil, nil);
if iRes = ERROR_SUCCESS then
begin
SetLength(s, BufSize);
Move(buf^, s[1], BufSize);
if ResultList = '' then
ResultList := s
else
ResultList := Concat(ResultList, #13#10, s);
inc(i);
end;
end;
FreeMem(buf);
RegCloseKey(hTemp);
end;
end;