whats new ¦  programming tips ¦  indy articles ¦  intraweb articles ¦  informations ¦  links ¦  interviews ¦  misc ¦  forum
 kylix ¦  tutorials ¦  online shop ¦  photos ¦  Add&Win Game

Tips (1565)

Database (91)
Files (139)
Forms (113)
Graphic (116)
IDE (21)
Indy (5)
Internet / LAN (133)
IntraWeb (0)
Kylix (10)
Math (77)
Misc (128)
Multimedia (46)
Objects/
ActiveX (51)

OpenTools API (3)
Printing (35)
Strings (83)
System (268)
VCL (246)

Top15

Tips sort by
component


Search Tip

Add new Tip

Add&Win Game

Advertising

35 Visitors Online


SwissDelphiCenter is a Borland Technology Partner
 
...store a TDateTime in the registry?
Autor: Thomas Stutz
[ Print tip ]  

Tip Rating (0):  
     


uses
  
Registry;

// Write TDateTime to Registry
procedure Reg_WriteDateTime(dwRootKey: DWord; const sKey: stringconst sField: string; aDate: TDateTime);
begin
  with 
TRegistry.Create do
  try
    
RootKey := dwRootKey;
    if OpenKey(sKey, True) then
    begin
      try
        
WriteBinaryData(sField, aDate, SizeOf(aDate));
      finally
        
CloseKey;
      end;
    end;
  finally
    
Free;
  end;
end;

// Read TDateTime from Registry
function Reg_ReadDateTime(dwRootKey: DWord; const sKey: stringconst sField: string) : TDateTime;
begin
  
Result := 0; // default Return value
  
with TRegistry.Create do
  begin
    
RootKey := dwRootKey;
    if OpenKey(sKey, False) then
    begin
      try
        
ReadBinaryData(sField, Result, SizeOf(Result));
      finally
        
CloseKey;
      end;
    end;
    Free;
  end;
end;

// Example:

// Write DateTimePicker1's DateTime to Registry
procedure TForm1.Button1Click(Sender: TObject);
begin
   
Reg_WriteDateTime(HKEY_CURRENT_USER, 'Software\TestXYZ\','DateTime',DateTimePicker1.DateTime);
end;

// Set DateTimePicker1's DateTime from Registry
procedure TForm1.Button2Click(Sender: TObject);
var
 
ATime: TDateTime;
begin
  
ATime := Reg_ReadDateTime(HKEY_CURRENT_USER, 'Software\TestXYZ\','DateTime');
  if ATime <> 0 then
    
DateTimePicker1.DateTime := TDateTime(ATime);
end;


 

Rate this tip:

poor
very good


Copyright © by SwissDelphiCenter.ch
All trademarks are the sole property of their respective owners