Check this out, it may help. I use this unit to find the version string for the application.
You may be able to play with it to find the exe date as well. I just grabbed it from somewhere so I didn't look any further than the version string.
Hope it can help:
unit Version;
// Returns version information from the VERSION_INFO resource
interface
procedure GetVersion(var MajorVersion, MinorVersion, Release, Build: integer);
function GetVersionFormatted: string;
function GetVersionFormattedNoBuild: string;
implementation
uses Windows, SysUtils;
type
RVersionInfo = record
achFiller: array [1..6] of char; // Unknown
VersionInfoHdr: array [1..16*2] of char; // WideString('VS_VERSION_INFO')
achFiller2: array[1..10] of char; // Unknown
MinorVersion: word;
MajorVersion: word;
Build: word;
Release: word;
end;
PVersionInfo = ^RVersionInfo;
procedure GetVersion(var MajorVersion, MinorVersion, Release, Build: integer);
var
Rsrc : HRSRC;
Res : HGLOBAL;
Version : PVersionInfo;
begin
MajorVersion := 0; MinorVersion := 0; Release := 0; Build := 0;
Rsrc := FindResource(HInstance, Pchar(1), RT_VERSION);
if Rsrc <> 0 then
begin
Res := LoadResource(HInstance, Rsrc);
Version := PVersionInfo(LockResource(Res));
MajorVersion := Version.MajorVersion;
MinorVersion := Version.MinorVersion;
Release := Version.Release;
Build := Version.Build;
end;
end;
function GetVersionFormatted: string;
var MajorVersion, MinorVersion, Release, Build: integer;
begin
GetVersion(MajorVersion, MinorVersion, Release, Build);
result := Format('%d.%d.%d:%d', [MajorVersion, MinorVersion, Release, Build]);
end;
function GetVersionFormattedNoBuild: string;
var MajorVersion, MinorVersion, Release, Build: integer;
begin
GetVersion(MajorVersion, MinorVersion, Release, Build);
result := Format('%d.%d.%d', [MajorVersion, MinorVersion, Release]);
end;
end.