Err$, Error$ Functions

Purpose

Returns the error number and text.

Syntax

Err$ [(i)]

Error$ [(i)]

i: integer expression

Description

The Err$(i) function returns the string containing the GFA-BASIC error message for code number i. Without an argument Err$ returns the string for the last error.

The first 152 error numbers are reserved by GFA-BASIC 32. Hardware exceptions are mostly translated to GFA-BASIC 32 errors. When a GFA-BASIC 32 error results from an exception, the exception number constant and the meaning is mentioned as well.

Error$ is a synonym of Err$ and the two are interchangeable.

Err Err$
1 Divide by zero
2 Overflow
3 Parameter invalid
4 Error at Power
5 Error at Sin
6 Error at Cos
7 Error at Tan
8 Error at Fact
9 Error at Combin
10 Error at Variant
11 Error at Bessel function
12 Out of memory
13 Out of string memory
14 String len too big or negative
15 File name
16 File number
17 File not open
18 File number in use
19 File read error
20 File write error
21 File write error (partial written)
22 End Of File reached
23 Open...for Random...Len= mismatch
24 SEEK: no seek allowed
25 LOCK: can't lock
26 UNLOCK: can't unlock (param mismatch?)
27 Parameter SPC: 0 < x < 1000
28 Parameter TAB: 0 < x < 256
29 Declare: library not found
30 Declare: dll not found
31 Error at Kill(File)
32 Error at (Re)Name/ MoveFile
33 Error at CopyFile, FileCopy
34 Error at ChDir
35 Error at MkDir
36 Error at RmDir
37 Error at DFree
38 Array already DIMed
39 Array Index (DIM) too big
40 Arraysize (DIM) too big
41 Parameter at (Q)ROUNDC
42 Bad Format
43 Bad data for Unpack
44 Problem with Joystick-window
45 Error with variant
46 Error with object
Check HResult for detailed information on the error.
47 Variant is not an Object
48 Object is not a Control
49 Object is not a Font
50 Object is not a Picture
51 Object is not a Form
52 Variant type?
53 Stackpointer at PasCall
Might be the result of a wrong ret instruction in assembler code. A call through a function pointer is guarded with a structured exception handling mechanism, so that an error in the called function is trapped. GFA-BASIC 32 then generates error 53. This error can also come up when the function is called using StdCall and others.
54 Address for mFree()
55 Address for mShrink()
56 Error at DatePart
57 Parameter missing
58 Recursion
59 QBDraw?
60 Internal Error
61 Unknown char in Unicode string
GFA-BASIC 32 uses its own (faster) Unicode char conversion functions. An error with conversion results in the error. The conversion functions are heavily used throughout the runtime.
62 Index out of range (array in variant)
63 Array() in Variant not one dimensional
64 No Array() in Variant
65 VT_UNKNOWN not supported now
66 The object is Nothing
67 Field needs Random File
68 Field bad size (0)
69 Field: bad size (too big)
70 Field total size not matches random len
71 Put #/Get # without Field and without variable
72 Field string len changed
73 The Hash[] is empty
74 Hash[% i starts at 1]
75 Hash[% index too big]
76 Hash["key not found"]
77 Hash[] Internal Error 1 (Version?)
78 Hash[] Internal Error 2 (Memory?)
79 Hash["key already exists"]
80 Hash["empty key not allowed"]
81 Null not allowed
82 (R)InStr startpos must be a simple number
83 (R)InStr 1st and 3rd parameter are simple numbers
84 Parameter mismatch for Mat op
85 Matrix size mismatch
86 Matrix type mismatch (Single and Double)
87 The matrix is not square
88 The inverse matrix could not be determined
89 Type mismatch
90 Not Implemented (now?), probably to be done
91 Read: out of data
92 Read: no data
93 Guard-Page-Violation (Stack Error)
94 Datatype-Misalignment
EXCEPTION_DATATYPE_MISALIGNMENT: The thread tried to read or write data that is misaligned on hardware that does not provide alignment. For example, 16-bit values must be aligned on 2-byte boundaries; 32-bit values on 4-byte boundaries, and so on.
95 Breakpoint (Int 3 = Monitor)
EXCEPTION_BREAKPOINT: A breakpoint was encountered.
96 Single-Step (Debugger)
EXCEPTION_SINGLE_STEP: A trace trap or other single-instruction mechanism signaled that one instruction has been executed.
97 Access-Violation
EXCEPTION_ACCESS_VIOLATION: The thread tried to read from or write to a virtual address for which it does not have the appropriate access.
98 In-Page-Error
EXCEPTION_IN_PAGE_ERROR: The thread tried to access a page that was not present, and the system was unable to load the page. For example, this exception might occur if a network connection is lost while running a program over the network.
99 No-Memory
100 Invalid Assembler Instruction (Illegal-Instruction)
EXCEPTION_ILLEGAL_INSTRUCTION: The thread tried to execute an invalid instruction.
101 Noncontinuable-Exception
EXCEPTION_NONCONTINUABLE_EXCEPTION : The thread tried to continue execution after a non-continuable exception occurred.
102 Invalid-Disposition
EXCEPTION_INVALID_DISPOSITION: An exception handler returned an invalid disposition to the exception dispatcher. Programmers using a high-level language such as C (and GFA-BASIC 32) should never encounter this exception.
103 Array-Bounds-Exceeded
EXCEPTION_ARRAY_BOUNDS_EXCEEDED: The thread tried to access an array element that is out of bounds and the underlying hardware supports bounds checking.
104 Float-Denormal-Operand
EXCEPTION_FLT_DENORMAL_OPERAND: One of the operands in a floating-point operation is denormal. A denormal value is one that is too small to represent as a standard floating-point value.
105 Float-Divide-By-Zero
EXCEPTION_FLT_DIVIDE_BY_ZERO: The thread tried to divide a floating-point value by a floating-point divisor of zero.
106 Float-Inexact-Result
EXCEPTION_FLT_INEXACT_RESULT: The result of a floating-point operation cannot be represented exactly as a decimal fraction.
107 Float-Invalid-Operation
EXCEPTION_FLT_INVALID_OPERATION: This exception represents any floating-point exception not included in this list.
108 Float-Overflow
EXCEPTION_FLT_OVERFLOW: The exponent of a floating-point operation is greater than the magnitude allowed by the corresponding type.
109 Float-Stack-Check
EXCEPTION_FLT_STACK_CHECK: The stack overflowed or underflowed as the result of a floating-point operation.
110 Float-Underflow
EXCEPTION_FLT_UNDERFLOW: The exponent of a floating-point operation is less than the magnitude allowed by the corresponding type.
111 Integer-Divide-By-Zero
EXCEPTION_INT_DIVIDE_BY_ZERO: The thread tried to divide an integer value by an integer divisor of zero.
112 Integer-Overflow
EXCEPTION_INT_OVERFLOW: The result of an integer operation caused a carry out of the most significant bit of the result.
113 Privileged-Instruction (I/O Ports for NT)
EXCEPTION_PRIV_INSTRUCTION: The thread tried to execute an instruction whose operation is not allowed in the current machine mode.
114 Stack-Overflow
EXCEPTION_STACK_OVERFLOW: The thread used up its stack.
115 Control-C-Exit
DBG_CONTROL_C: ctrl+c is input to a console process that handles ctrl+c signals and is being debugged. This exception code is not meant to be handled by applications. It is raised only for the benefit of the debugger, and is raised only when a debugger is attached to the console process.
116 For Each: this object is not a collection
117 Object type mismatch
118 Wrong type of object for Dim .. As New Type
119 Error on FreeBmp
120 MiMeTo format error
121 No Tool help functions, Windows 95/98/NT 5.0 required
122 Index out of range (ParamArray)
123 Cannot create OCX/Form
124 Owner change not allowed
125 No shell32.dll found
126 Insert/Delete: array not one dimension
127 Insert/Delete: array bound exceeded
128 Insert/Delete: not for boolean array
129 MCI error message
130 uudecode format error
131 Array type error (matrix only double/single)
132 Array dim error (matrix - only 1 and 2 dim)
133 FileOp not for CON:
134 FileOp not for LPT:
135 PolyLine/PolyFill not for Variant/Boolean Arrays
136 The Ocx array is empty
137 Ocx(Index bad)
138 MdiChildWindow needs MdiParentWindow
139 Error on System
140 reStop
141 This API function exists in 16 Bit only
142 Error when writing to the registry
143 Error creating registry key
144 Error opening registry key
145 Recursiv Deletion of Registry Keys attempted
146 CodeBase: Code4Init not called
147 CodeBase: Code4Init error
148 CodeBase: error: can't load library
149 CodeBase warning: locking (r4locked)
150 The corresponding CodeBase database/object has been closed
151 SendKeys string error
152 SendKeys recursiv

Example

Local a$, i%

Debug.Show

For i% = 1 To 152

Trace i%

If Odd(i%) : Trace Err$(i%)

Else : Trace Error$(i%)

EndIf

Next i%

Returns the strings with GFA-BASIC error messages for codes 1 to 152.

See Also

Err Object, SysErr

{Created by Sjouke Hamstra; Last updated: 04/10/2014 by James Gaite}