Hallo,
ich erstelle eine
DLL mit Delphi 10.4.
In den Projektoptionen ist die Version eingetragen (z.B. 1.2.7.0)
Nun möchte ich zur Kontrolle, ob die richtige
DLL im Anwendungsprogramm verwendet wird, deren Version auslesen...
Delphi-Quellcode:
function GetCurrentVersion(): string;
var
VerInfoSize: DWord;
VerInfo: Pointer;
VerValueSize: DWord;
VerValue: PVSFixedFileInfo;
Dummy: DWord;
begin
VerInfoSize := GetFileVersionInfoSize(PChar(getModuleName), Dummy);
GetMem(VerInfo, VerInfoSize);
GetFileVersionInfo(PChar(getModuleName), 0, VerInfoSize, VerInfo);
VerQueryValue(VerInfo, '\', Pointer(VerValue), VerValueSize);
with VerValue^ do
begin
Result := IntTostr(dwFileVersionMS shr 16);
Result := Result + '.' + IntTostr(dwFileVersionMS and $FFFF);
Result := Result + '.' + IntTostr(dwFileVersionLS shr 16);
Result := Result + '.' + IntTostr(dwFileVersionLS and $FFFF);
end;
FreeMem(VerInfo, VerInfoSize);
end;
Die obige Funktion habe ich hier vor langer Zeit einmal hier gefunden

Leider bekomme ich als Ergebnis "1.0.0.0" und wenn ich mit die Eigenschaften der
DLL im Explorer ansehe, ist da auch nur 1.0.0.0 als Dateiversion und Produktversion angegeben!
Warum steht das 1.2.7.0 nicht in den Eigenschaften der
DLL?
Ciao
Stefan