![]() |
Delphi-Version: 2010
IntToStr liefert Exception
Hallo ihr Lieben,
Ich habe hier folgendes kleines Stückchen Code:
Delphi-Quellcode:
Wie ihr seht handelt es sich um eine Debugprozedur für eine COM-Schnittstelle, die bei mir eingebunden ist.Wie ihr seht, habe ich ein anderes Trace eingefügt und an den auskommentierten Zeilen erkennt ihr auch, dass ich schon ein wenig herumprobiert habe...
procedure TComThread.COMDebug(S: string);
var P: PChar; didWork: Boolean; aHandle: HWND; aTickCnt: Cardinal; aTimeStamp: Cardinal; S2: string; begin try aTickCnt := GetTickCount; aTimeStamp := aTickCnt - PultStartTime; S := ' ms: ' + S; S2:= IntToStr(aTimeStamp); S := S2 + S; // getmem(P, length(S) + 1); // strPCopy(P, S); // aHandle := Self.Handle; // didWork := PostMessage(aHandle, WM_COMTHREAD, IDCOMDebug, LongInt(P)); // didWork := PostMessage(FHandle, WM_COMTHREAD, IDCOMDebug, LongInt(P)); TraceString('ComDebug:' + S); // if assigned(SLDebug) then // SLDebug.Add(inttostr(GetTickCount - PultStartTime) + ' ms: ' + S + ' ' + BoolToStr(didWork,true)); except on ex:Exception do begin TraceString('ComDebugException:' + S); TraceString('ComDebugException:' + ex.Message); end; end; end; Das IntToStr liefert mir teilweise, also nicht immer, aber doch immer an den selben Stellen eine "Zugriffsverletzung bei Adresse 00402FEB in Modul 'mitPultComp.exe'. Schreiben von Adresse 0057001C" Woher kommt das? Und wie krieg ich das weg? :oops: Als Umgebung verwende ich Delphi 2010. Ich hoffe, ihr könnt mir irgendwie helfen? |
AW: IntToStr liefert Exception
Kann es sein dass der Stack an anderer Stelle schon ins Rutschen gekommen ist und der Fehler mehr zufällig hier aufschlägt?
Wir hatten einmal einen solchen Fall durch eine unsauber implementierten stralloc > GetTempPath Routine die im Code an den unmöglichsten Stellen viel später zu unerklärbaren Fehlern führte. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:28 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz