Hi,
I am writing a program which allows for multiple languages. When I include the language files with my exe, my program encounters the following error when I close the main form:
Exception EAccessViolation in module "<myProgram>.exe at 0000000 Access Violation at address 000000. Read of address 000000.
If I do NOT include the language files, the error does not occur.
I've tried to trace through the closing procedure, and the crash occurs after my mainForm.Destroy procedure, in a seemingly endless series of component destroy methods that exist on my main form, so I do not actually know exactly which line of code makes the error.
Any thoughts?
Which component contains/accesses the language files?
The form itself uses the language files. The ReinitializeForms command is called and it uses the language files if they are present (in my case, english .ENU and spanish .ESP). These 2 langauge files are compiled and created using .dfm files specific to each langauge. Each additional language my program includes, means another set of .dfm files. The .dfm files for each langauge contain all forms in my project, and have all labels and buttons and captions etc translated from english into the different langauge they apply to.
The call to Reinitialize forms makes it possible to redraw the form using the langauge file specific to the langauge the user selected (if that language file is present). Without those langauge files present, there is no call to reinitializeForms. Im thinking none of this applies since the problem is crashing deep into the destroy methods for the form, but I could be very wrong.
Upon further thought, clearly the language files have something to do with the issue, or play a role in the cause of the issue since there is no error when the language files are not present. Ill be happy to entertain any thoughts/suggestions!
Thankyou!
Do the language files have non-ASCII characters that are trying to be used by non-Unicode components?
Thanks for your efforts WingedPanther! I took the lazy route and pulled up a recent backed up version, re-applied my recent changes, and the error was gone.
There are currently 1 users browsing this thread. (0 members and 1 guests)
Bookmarks