Einzelnen Beitrag anzeigen

Win32.API

Registriert seit: 23. Mai 2005
312 Beiträge
 
#11

AW: EDivByZero ohne Sysutils fangen

  Alt 4. Aug 2011, 16:03
Mit {$O-} Die Frage ist wieso verweigert der Exception-Handler den Dienst, wenn ich die Sysutils nicht einbinde.
Macht er doch gar nicht, er schreibt doch
Zitat:
Runtime error 200 at 00402482
Es ist halt nicht der aus Sysutils, sondern der, der default da ist (wenn Du VCL benutzt hast Du immer Sysutils).
Der Delphi interne Exception-Handler verschluckt die Exception und reicht sie nicht wie erwartet an meinen lokalen Handler weiter. Was ich sehr merkwürdig finde.

Delphi-Quellcode:
procedure RunErrorAt(ErrCode: Integer; ErrorAtAddr: Pointer);
begin
  ErrorAddr := ErrorAtAddr;
  _Halt(ErrCode);
end;
Ohne SysUtils ladet man dort und mit SysUtils wird stattdessen für bekannte Fehler die entsprechende Exception ausgelöst.
DivByZero ist doch schon eine Exception wieso wird diese nicht weitergereicht? Im Klartext heißt das, dass ich keine Chance habe über einen lokalen Delphi-Exception-Handler diese Exception zu fangen?
  Mit Zitat antworten Zitat