System.SysUtils.EExternal

From Appmethod Libraries
Jump to: navigation, search

System.SysUtils.ExceptionSystem.TObjectEExternal

Object Pascal

EExternal = class(Exception)

C++

class PASCALIMPLEMENTATION EExternal : public Exception

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.

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