Why do datasource of database-controls dissapear when Delphi crashes

209 views Asked by At

I'm using Delphi 10.4.1 Enterprise and wrote a VCL program using an SQLite database.

As I suspect a OneDrive issue, I mention that the source code folder is part of the zone managed by OneDrive.

At times, whilst debugging, my Delphi program hangs for unknown reasons, and Delphi quits without further notice. Whenever this happens, the connections between the MainForm and the DataModule (DM1) are lost: in the Object Inspector of the MainForm, all DataSource assignments, ie connections to DataSources in the DataModule, are gone. Moreover, when I reload the program, there is the error message

Access violation at address 500C3553 in module 'rtl270.bpl'. Read of address 00000008

Code-checking gives no errors, but when compiling the following message/request appears:

Module 'MainForm' links to module 'DM1' which cannot be found in the current project. Do you wish to remove/redirect the links to another module?

The weird thing is that the DataModule design form in the IDE can no longer be made visible, only its code remains. Therewith, from within the MainForm the DataModule neither is visible, since dropdowns in the DataSource connectors of the DB-controls remain empty. Last, but not least, when I try to save the MainForm, it says:

Module "*MainForm" references another module and cannot be saved until DM1 is loaded

Whatever I tried to get it back to normal, it was unsuccessful. However, in the OneDrive root folder, I see a file named ".849C9593-D756-4E56-8D6E-..etc..", which seems to be associated with my program, because of its file date. It can only be deleted or modified when I close OneDrive, but it revives after restart.

I am stuck, for many days already.

Does anyone have an idea what is going on, and can give me a hint on how to proceed?

1

There are 1 answers

0
JGMS On

I found out what has caused the Access Violation that showed up after I tried to bring the datasource connections back in place. I did that by editing the DFM-file of the Mainform, rather than direct in the Object Inspector. I normally do editing in dfm-files, but adding lines with datasource assignments appears not to be allowed. This was quite a tough lesson for me! I am happy to have the program running again. Thank you all for your time, @Remy in particular.

Thanks, JGMS