Danke, der Code scheint der zu sein den ich gefunden habe, hier mal meine abgeänderte Variante die aber wie gesagt unter Windows XP funktioniert:
Delphi-Quellcode:
Reg := TRegistry.Create(KEY_READ);
with Reg
do
try
RootKey := HKEY_LOCAL_MACHINE;
if WinNT then Reg.OpenKeyReadOnly(CURRENT_VERSION_NT)
else Reg.OpenKeyReadOnly(CURRENT_VERSION_32);
if not WinNT then
begin
if GetDataType('
FirstInstallDateTime') = rdInteger
then Buf := DWORD(ReadInteger('
FirstInstallDateTime'))
else ReadBinaryData('
FirstInstallDateTime', Buf, SizeOf(Buf));
VersionInfo.InstallDate := FormatDateTime('
dd.mm.yyyy hh:nn:ss "Uhr"', FileDateToDateTime(Buf));
end
else
begin
if GetDataType('
InstallDate') = rdInteger
then Buf := DWORD(ReadInteger('
InstallDate'))
else ReadBinaryData('
InstallDate', Buf, SizeOf(Buf));
VersionInfo.InstallDate := FormatDateTime('
dd.mm.yyyy hh:nn:ss "Uhr"', EncodeDate(1970, 1, 1) + (Buf / SecsPerDay));
end;
finally
Reg.Free;
end;
@Bernhard Geyer:
Ja also unter XP gibts InstallDate aber da ich kein Vista habe, bin ich auch andere mit Vista angewiesen.