unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Registry;
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
Reg : TRegistry;
Buffer : PChar;
D : TDATE;
T : TTIME;
begin
Buffer := '101010';
D := DATE;
T := TIME;
Reg := TRegistry.Create;
try
Reg.RootKey := HKEY_CURRENT_USER;
if Reg.OpenKey('\DDDD', True) then
begin
Reg.WriteCurrency ('Currency' , 100 );
Reg.WriteBinaryData ('BinaryData' , Buffer, 10 );
Reg.WriteDateTime ('DateTime' , D );
Reg.WriteDate ('Date' , D );
Reg.WriteTime ('Time' , T );
Reg.WriteFloat ('Float' , 101.5 );
Reg.WriteInteger ('Integer' , 99 );
Reg.WriteBool ('Bool' , True );
Reg.WriteString ('String' , 'TEST' );
Reg.WriteExpandString('ExpandString', 'TEST , Expand String');
end;
finally
Reg.CloseKey;
Reg.Free;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
Reg : TRegistry;
Buffer : PChar;
begin
Reg := TRegistry.Create;
try
Reg.RootKey := HKEY_CURRENT_USER;
if Reg.OpenKey('\DDDD', True) then
begin
Memo1.Lines.Add( 'Currency=' FloatToStr(Reg.ReadCurrency ('Currency' ) ));
Memo1.Lines.Add( 'BinaryData=' IntToStr (Reg.ReadBinaryData('BinaryData', Buffer,10)));
Memo1.Lines.Add( 'DateTime=' DateToStr (Reg.ReadDateTime ('DateTime' )));
Memo1.Lines.Add( 'Date=' DateToStr (Reg.ReadDate ('Date' )));
Memo1.Lines.Add( 'Time=' TimeToStr (Reg.ReadTime ('Time' )) );
Memo1.Lines.Add( 'Float=' FloatToStr(Reg.ReadFloat ('Float' )));
Memo1.Lines.Add( 'Integer=' IntToStr (Reg.ReadInteger ('Integer' )));
if (Reg.ReadBool ('Bool' ) = true ) then Memo1.Lines.Add( 'Bool=' 'True' );
if (Reg.ReadBool ('Bool' ) = false) then Memo1.Lines.Add( 'Bool=' 'False' );
Memo1.Lines.Add( 'String=' Reg.ReadString ('String' ));
Memo1.Lines.Add( 'Expandstring=' Reg.ReadString ('ExpandString'));
end;
finally
Reg.CloseKey;
名稱
|
類型
|
資料
|
REG_BINARY
|
Bool
|
0x00000001(1)
|
REG_ BINARY
|
Date
|
00 00 00 00 80 01 e3 40
|
REG_ BINARY
|
ExpandString
|
TEST,Expand String
|
REG_ BINARY
|
Integer
|
0x00000063(99)
|
REG_SZ
|
Time
|
3e e8 d9 ac fa ee 3f
|