Einzelnen Beitrag anzeigen

Robert Marquardt
(Gast)

n/a Beiträge
 
#21

Re: JCLCounter - High Performance Counter

  Alt 26. Jun 2007, 09:21
Thanks for this hint! We will check the JCL if we can find a problem there. It may be a compiler bug though.

Der Hinweis ist das Projekt auf record alignment 4 bzw. 8 einzustellen und komplett neu zu erstellen.
creality, kannst du mal {$ALIGN 4} in JclCounter.pas einfuegen und die JCL neu erstellen (einfach install.bat erneut ausfuehren).
Am besten zwischen das erste uses und der Deklaration von TJclCounter.
Alternativ

{$IFDEF MSWINDOWS}
function QueryPerformanceCounter(var lpPerformanceCount: Int64): BOOL; stdcall; external kernel32 name 'QueryPerformanceCounter';
function QueryPerformanceFrequency(var lpFrequency: Int64): BOOL; stdcall; external kernel32 name 'QueryPerformanceCounter';
{$ENDIF MSWINDOWS}

In der implementation section von JclCounter.pas platzieren. Das Original in Windows.pas ist mit TLargeInteger deklariert und daher koennten die Probleme kommen.
Wenn das nicht hilft, dann

{$IFDEF MSWINDOWS}
function QueryPerformanceCounter(lpPerformanceCount: Pointer): BOOL; stdcall; external kernel32 name 'QueryPerformanceCounter';
function QueryPerformanceFrequency(lpFrequency: Pointer): BOOL; stdcall; external kernel32 name 'QueryPerformanceCounter';
{$ENDIF MSWINDOWS}

ausprobieren und die Aufrufe um ein @ vor dem Parameter ergaenzen.

Bitte alle Varianten ausprobieren. Sollte die zweite Variante funktionieren, dann wird sie in die JCL uebernommen.
  Mit Zitat antworten Zitat