![]() |
try ... except
Hi, ich hab in meine DLL gerade folgende Funktion eingebunden:
Delphi-Quellcode:
die Try...Except-Anweisung sollte doch den Fehler der durch DebugBreak entsteht abfangen, aber irgendwie funktioniert genau das nicht. windows melde mir dauernd das ein fehler aufgetreten ist und beendet das Programm. Woran kann das liegen?
procedure ForceException;
var start,ende:DWORD; err:boolean; begin err:=false; start:=GetTickCount; try DebugBreak; except err:=true; end; ende:=GetTickCount; if (start-ende>10) or not err then ExitProcess(0); end; |
Re: try ... except
Moin MCQ,
wenn das in der IDE auftritt: Tools\Debugger Optionen\Sprach-Exceptions Checkbox: Bei Delphi-Exceptions anhalten deaktivieren. (die Bezeichnungen könnten nicht ganz stimmen, da ich nur englisches Delphi habe) |
Re: try ... except
Nein, es passiert auch im Explorer :(
|
Re: try ... except
Vielleicht tritt der Fehler ja an anderer Stelle auf?
Um das zu prüfen, kannst du ja ein ShowMessage oder Beep in o. g. Prozedur verwenden. Dann siehst/hörst du, ob der Fehler daher kommt oder nicht. |
Re: try ... except
kommentiere ich aber die DebugBreak-Zeile aus, funktioniert alles wunderbar, also kann der fehler nur dort auftreten ... Ich weiss langsam echt nicht mehr weiter :(
|
Re: try ... except
Rufst du die von aussen auf?
Dann fehlt "stdcall;". :) |
Re: try ... except
das ist eigendlich eine interne funktion. Die funktion soll also nur aus der eigenen DLL aufgerufen werden.
|
Re: try ... except
Bist du dir sicher, dass das except auch Breakpoint-Exceptions abfängt ?
In der Hilfe zu DebugBreak steht nämlich: Zitat:
|
Re: try ... except
ich habs auch mit int 3 und division by sero probiert ... immer das selbe problem :(
|
Re: try ... except
Läuft eigentlich ein Debugger ?
Ach, und was möchtest du machen ? :mrgreen: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:12 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