바이트의 배열로 읽어들여서 하나씩 출력하는 예제.
procedureTForm1.Button1Click(Sender: TObject);
var
Reg: TRegistry;
Size: Integer;
Buffer: array ofByte;
i: Integer;
begin
Reg:=TRegistry.Create;
try
ifReg.OpenKeyReadOnly('Software\TestKey') then begin
Size:=Reg.GetDataSize('RegBinary');
SetLength(Buffer, Size);
Reg.ReadBinaryData('RegBinary', Buffer[0], Size);
fori:=0toSize-1doMemo1.Lines.Add(Format('[%2d] = %x', [i, Buffer[i]]));
end;
finally
FreeAndNil(Reg);
end;
end;
만약 전부 문자열이라면 String 으로 읽어들이면 되는데 그 방법이 Byte 배열과 약간 다르다.
아래와 같이 하면 됨.
procedureTForm1.Button1Click(Sender: TObject);
var
Reg: TRegistry;
Size: Integer;
Buffer: String;
begin
Reg:=TRegistry.Create;
try
ifReg.OpenKeyReadOnly('Software\TestKey') then begin
Size:=Reg.GetDataSize('RegBinary');
SetLength(Buffer, Size);
Reg.ReadBinaryData('RegBinary', Buffer[1], Size);
Memo1.Lines.Add(Buffer);
end;
finally
FreeAndNil(Reg);
end;
end;
댓글 없음:
댓글 쓰기