API:System.SysUtils.EStackOverflow

From RAD Studio API Documentation

EStackOverflowSystem.SysUtils.EExternalSystem.SysUtils.ExceptionSystem.TObject

Delphi

EStackOverflow = class(EExternal)

C++

class PASCALIMPLEMENTATION EStackOverflow _DEPRECATED_ATTRIBUTE0  : public EExternal

Properties

Type Visibility Source Unit Parent
class public
System.SysUtils.pas
System.SysUtils.hpp
System.SysUtils System.SysUtils

Description

EExternal is the exception class that captures external error information. {{#multireplace:System.SysUtils.EStackOverflow|H21=!|H25=%|H28=(|H29=)|H2A=*|H2B=+|H2F=/|H3C=<|H3D==|H3E=>|H5B=[|H5D=]|H5E=^|H7C=|}} inherits from {{#multireplace:System.SysUtils.EExternal|H21=!|H25=%|H28=(|H29=)|H2A=*|H2B=+|H2F=/|H3C=<|H3D==|H3E=>|H5B=[|H5D=]|H5E=^|H7C=|}}. All content below this line refers to {{#multireplace:System.SysUtils.EExternal|H21=!|H25=%|H28=(|H29=)|H2A=*|H2B=+|H2F=/|H3C=<|H3D==|H3E=>|H5B=[|H5D=]|H5E=^|H7C=|}}.

EExternal is the exception class that captures external error information.

EExternal is the ancestor of all exception classes that represent external run-time errors.

Note: EExternal classes represent Win32 exception codes. The ExceptionRecord member points to a Win32 exception record:

type
  PExceptionRecord = ^TExceptionRecord;
  TExceptionRecord = record
    ExceptionCode: Cardinal;
    ExceptionFlags: Cardinal;
    ExceptionRecord: PExceptionRecord;
    ExceptionAddress: Pointer;
    NumberParameters: Cardinal;
    ExceptionInformation: array[0..14] of Cardinal;
  end;

var ExceptionRecord: PExceptionRecord;
  struct TExceptionRecord;
  typedef TExceptionRecord *PExceptionRecord;
  struct TExceptionRecord
  {
    unsigned ExceptionCode;
    unsigned ExceptionFlags;
    TExceptionRecord *ExceptionRecord;
    void *ExceptionAddress;
    unsigned NumberParameters;
    unsigned ExceptionInformation[15];
  };

Note: Under MAC OS, EExternal classes represent various run-time errors. EExternal has three fields with exception information:

  • ExceptionAddress, which contains the address of the instruction that caused the error.
  • AccessAddress, the address that was being accessed when the error occurred.
  • SignalNumber, for exceptions raised by Macintosh signals.

See Also