What does this error mean?

Access Violation are jambs with memory access. Attempting to read / write where you can not write (in your case, you read the memory by $ FFFFFFE4 adrem).
As a rule, this means that you did not initialize the object properly before working with it, either you already managed to free it and call its method, or crawled into someone else's memory (for example, when working with dynamic arrays) and thus corrupted the object.
It will help start in debug mode, identify the place where an exception is thrown, analyze the code for the memory manipulation that provoked the exception.
FileCheck , I suppose, is of type TFileStream ? Then the assumptions are correct, and you work with an uncreated object. FileCheck.Create(GetCurrentDir + 'run.fch', fmCreate); - the constructor is never called on the object itself (the object has not yet been created). Fix on FileCheck := TFileStream.Create(GetCurrentDir + 'run.fch', fmCreate); and everything will turn out. - Nofate ♦access violation at address 00403AA3 in the screen.exe module. Reading address FFFFFF4;
Obviously with memory something namudil. The code is better laid out where the error is triggered.
Source: https://ru.stackoverflow.com/questions/96953/
All Articles