Delphi Runtime Error

今天遇到了Runtime Error 255的错误提示,在网上搜索了好一会儿都没找到比较详细的信息,竟然在Delphi的帮助文件中找到了,收集了一下运行时信息的资料,供日后参考。

Certain errors at runtime cause Delphi programs to display an error message and terminate.

Runtime errors take the form:

Runtime error nnn at xxxxxxxx

where nnn is the runtime error number, and xxxxxxxx is the runtime error address.

Applications that use the SysUtils class map most runtime errors to Exceptions, which allow your application to resolve the error without terminating.

Delphi runtime errors are divided into the following categories:

I/O errors, numbered 100 through 149

Fatal errors, numbered 200 through 255

Operating system errors

I/O error list

The following table lists all I/O errors, numbers, and descriptions.

Number Name Description

100 Disk read error Reported by Read on a typed file if you attempt to read past the end of the file.

101 Disk write error Reported by CloseFile, Write, WriteIn, or Flush if the disk becomes full.

102 File not assigned Reported by Reset, Rewrite, Append, Rename, or Erase if the file variable has not been assigned a name through a call to Assign or AssignFile.

103 File not open Reported by CloseFile, Read Write, Seek, Eof, FilePos, FileSize, Flush, BlockRead, or BlockWrite if the file is not open.

104 File not open for input Reported by Read, Readln, Eof, Eoln, SeekEof, or SeekEoln on a text file if the file is not open for input.

105 File not open for output Reported by Write or Writeln on a text file if you do not generate a Console application.

106 Invalid numeric format Reported by Read or Readln if a numeric value read from a text file does not conform to the proper numeric format.

The following table lists all fatal errors, numbers, and mapped exceptions.

Number Name Exception

200 Division by zero EDivByZero

201 Range check error ERangeError

202 Stack overflow EStackOverflow

203 Heap overflow error EOutOfMemory

204 Invalid pointer operation EInvalidPointer

205 Floating point overflow EOverflow

206 Floating point underflow EUnderflow

207 Invalid floating point operation EInvalidOp

210 Abstract Method Error EAbstractError

215 Arithmetic overflow (integer only) EIntOverflow

216 Access violation EAccessViolation

217 Control-C EControlC

218 Privileged instruction EPrivilege

219 Invalid typecast EInvalidCast

220 Invalid variant typecast EVariantError

221 Invalid variant operation EVariantError

222 No variant method call dispatcher EVariantError

223 Cannot create variant array EVariantError

224 Variant does not contain array EVariantError

225 Variant array bounds error EVariantError

226 TLS initialization error No exception to map to.

227 Assertion failed EAssertionFailed

228 Interface Cast Error EIntfCastError

229 Safecall error ESafecallException

230 Unhandled exception No exception to map to.

231 Too many nested exceptions Up to 16 permitted.

232 Fatal signal raised on a non-Delphi thread No exception to map to.