导航

Delphi 异常类

Posted on 2014-07-23 15:46  紫电青霜  阅读(706)  评论(0)    收藏  举报

 

----------------------------------------------------------------------
EExternal = class(Exception)

    EExternalException = class(EExternal)    无效的异常码

    整数计算异常
    EIntError = class(EExternal)                整数计算异常(基类)
        EDivByZero = class(EIntError)            整数除 0 溢出
        EIntOverFlow = class(EIntError)        整数溢出
        ERangeError = class(EIntError)        整数越界

    浮点计算异常
    EMathError = class(EExternal)                浮点计算异常(基类)
        EInvalidArgument = class(EMathError)    参数超出范围
        EInvalidOp = class(EMathError)        无效浮点操作指令
        Eoverflow = class(EMathError)            浮点操作上溢
        Eunderflow = class(EMathError)        浮点操作下溢
        EZeroDivide = class(EMathError)        浮点计算除 0

    EAccessViolation = class(EExternal)        非法内存访问

    EPrivilege = class(EExternal)                处理器特权违规

    EStackOverflow = class(EExternal) end deprecated    栈溢出

    EControlC = class(EExternal)                用户中断

----------------------------------------------------------------------
    堆异常
EHeapException = class(Exception)
    EOutOfMemory  = class(EHeapException)        堆中没有足够的内存完成操作
        EOutOfResources = class(EOutOfMemory)
    EInvalidPointer = class(EHeapException)    试图访问一个堆外的指针

----------------------------------------------------------------------
    I/O异常
EInOutError = class(Exception)                DOS输入/输出错误

----------------------------------------------------------------------
    字符转换异常
EConvertError = class(Exception)                数字到字符串或字符串到数字转换错误

----------------------------------------------------------------------
    类型转换异常
EInvalidCast = class(Exception)                类型转换异常

----------------------------------------------------------------------
    哑异常
EAbort = class(Exception)                        调用 Abort 产生,不显示错误提示框

================================================

    流异常
EStreamError = class(Exception)
    EFileStreamError = class(EStreamError)
        EFCreateError = class(EFileStreamError)    创建文件时发生错误
        EFOpenError = class(EFileStreamError)        打开文件时发生错误
    EFilerError = class(EStreamError)
        EReadError = class(EFilerError)                不能从文件流读取数据
        EWriteError = class(EFilerError)                不能写数据到文件流
        EClassNotFound = class(EFilerError)            窗口上的组件已被删除
        EInvalidImage = class(EFilerError)            不能读资源文件
        EMethodNotFound = class(EFilerError)

EResNotFound = class(Exception)            无法找到资源
EBitsError = class(Exception)                试图非法访问布尔型数组
EListError = class(Exception)                索引项超出链表范围
EStringListError = class(Exception)        字符串链表(list box)越界
EParserError = class(Exception)            文本到二进制流转换错误

----------------------------------------------------------------------
    通用组件异常
EInvalidOperation = class(Exception)    在组件上的非法操作。原因:试图对 Parent 属性为 nil 的组件进行一些需要窗口句柄的操作,试图对窗体拖放操作
EComponentError = class(Exception)        不能注册或重命名一个组件
EOutOfResources = class(EOutOfMemory)    资源不足。原因:操作系统没有多余的句柄可分配

================================================

    专用组件异常    Unit Menus
EMenuError = class(Exception)                    菜单异常。原因:程序对菜单的非法操作。定义于 Menus 单元
EInvalidGridOperation = class(Exception)    非法的网格操作。原因:试图引用一个不存在的网格单元。定义于 Grids 单元
EStringSparseListError = class(Exception)

----------------------------------------------------------------------
EVariantError = class(Exception)                对 Variant 变量的操作失败

EPropReadOnly = class(Exception)                非法写一个只读属性
EPropWriteOnly = class(Exception)            非法读一个只写属性

EAssertionFailed = class(Exception)            断言失败

EIntfCastError = class(Exception)            接口异常

EInvalidContainer = class(Exception)        非法的容器
EInvalidInsert = class(Exception)

EPackageError = class(Exception)                调用组件包错误

ESafecallException = class(Exception)    safecall 调用转换时出错

----------------------------------------------------------------------
EAbstractError = class(Exception) end platform    试图调用一个抽象方法错误

EOSError = class(Exception)                操作系统错误
EWin32Error = class(EOSError) end deprecated    Windows 错误

----------------------------------------------------------------------
    目录异常    Unit QFileCtrls
EDirectoryError = class(Exception)
ESetDirectoryError = class(EDirectoryError)    目录设置错误
ECreateDirectoryError = class(EDirectoryError)    创建目录错误

----------------------------------------------------------------------
    图形异常    Unit Graphics
EInvalidGraphic = class(Exception)                图像格式不可识别或格式不匹配
EInvalidGraphicOperation = class(Exception)    非法图像操作。原因:访问图像中不存在的扫描线,不能成功写入图像,在画布未处于有效状态时进行绘制,装入未知或不支持的图象格式,将图像的 PixelFormat 设为不支持的值


----------------------------------------------------------------------
    数据库异常    Unit DB
EDatabaseError = class(Exception)
EUpdateError = class(EDatabaseError)    更新错误

----------------------------------------------------------------------
    日期异常    Unit ComCtrls
ECommonCalendarError = class(Exception)
EMonthCalError = class(ECommonCalendarError)    非法日期输入到 TMonthCalendar 组件
EDateTimeError = class(ECommonCalendarError)    非法日期和日间输入到 TDateTimePicker 组件

----------------------------------------------------------------------