Einzelnen Beitrag anzeigen

Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Warum läuft diese Funktion nicht unter D2005?

  Alt 5. Dez 2004, 17:51
Zitat von FriFra:
Delphi-Quellcode:
function TMain.GetVersion: string;
var
  VerInfoSize: DWord;
  VerInfo: Pointer;
  VerValueSize: DWord;
  VerValue: PVSFixedFileInfo;
  Dummy: DWord;
begin
  VerInfoSize := GetFileVersionInfoSize(PChar(ParamStr(0)), Dummy);
  GetMem(VerInfo, VerInfoSize);
  GetFileVersionInfo(PChar(ParamStr(0)), 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);
  Result := Result + BETA;
end;
Mit Delphi 2005 kommt es dabei immer zu einer Zugriffsverletzung im Modul 'version.dll'... warum?
Hi,

das kommt imho immer dann, wenn eine Datei keine Versioninformationen besitzt.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat