Hallo Geronimo,
ich habe es in meinem Projekt so gelöst, dass der User eine Datei auswählt (Turniere\*.oly), diese dann durch das Auswählen in in einen lokalen Datenbankordner kopiert (Data\Olympic.fdb) und dort geöffnet wird.
Das Projekt arbeitet also immer mit der Olympic.fdb an einer festen Stelle.
Beim Beenden des Programms wird diese auf Nachfrage ggf. wieder als *.oly im Turniere-Ordner abgelegt (kopiert) und dann die Olympic.fdb gelöscht.
Gibt es einen Systemcrash, ist beim nächsten Programmstart die Datenbank noch vorhanden und das Programm fragt, ob das letzte Turnier "wiederhergestellt" (also weiter benutzt) werden soll.
Beim Speichern als oly wird die Datenbank automatisch komprimiert und bei "öffnen" einer oly wird sie automatisch dekomprimiert (siehe mein kürzlicher Beitrag zum Thema
zLib).
Vielleicht soweit als mögliche Anregung...
Stahli