API:System.SysUtils.EMathError

From RAD Studio API Documentation
Jump to: navigation, search

System.SysUtils.EExternalSystem.SysUtils.ExceptionSystem.TObjectEMathError

Delphi

EMathError = class(EExternal);

C++

class PASCALIMPLEMENTATION EMathError : 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.

System.SysUtils.EMathError inherits from System.SysUtils.EExternal. All content below this line refers to System.SysUtils.EExternal.

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