RunTime Error 217 at 0049579E 是怎么回事呢?

解决方案 »

  1.   

    The meaning of Runtime Error 217
    The online help that comes with Delphi lists "control-C-exit" as the reason for a runtime error 217, here a listing of Delphi 3 Runtime Errors: STATUS_FLOAT_DIVIDE_BY_ZERO: 200;
    STATUS_INTEGER_DIVIDE_BY_ZERO: 200;
    STATUS_ARRAY_BOUNDS_EXCEEDED: 201;
    STATUS_STACK_OVERFLOW: 202;
    STATUS_FLOAT_OVERFLOW: 205;
    STATUS_FLOAT_UNDERFLOW,
    STATUS_FLOAT_DENORMAL_OPERAND: 206;
    STATUS_FLOAT_INEXACT_RESULT,
    STATUS_FLOAT_INVALID_OPERATION,
    STATUS_FLOAT_STACK_CHECK: 207;
    STATUS_INTEGER_OVERFLOW: 215;
    STATUS_ACCESS_VIOLATION: 216;
    STATUS_CONTROL_C_EXIT: 217;
    STATUS_PRIVILEGED_INSTRUCTION: 218;
    In the case of 217, this listing is wrong. In fact, Delphi executables will die with runtime error 217 when an exception was raised before SysUtils is initialized or after it is finalized. In both situations the regular exception handling is not put in place. If the error occurs right at your application's startup, check your initialization sections. Try to move code into a later part, e.g. into FormCreate() events.
    Otherwise check your units' finalization sections. Some typical situations where this can happen: - unexpected date formats - disk or registry accesses where the user has not sufficient privileges - BDE Net Dir mismatches