Bonjour,
J'ai fait un petit programme qui gère plusieurs tables avec une base Firebird
J'y ai introduit une partie sauvegarde/restauration de cette base.
La sauvegarde s'effectue sans soucis.
La restauration ne s'effectue pas, j'ai toujours un message que le fichier est occupé par un autre processus, pourtant je déconnecte bien la base avant de faire l'opération. Voici une partie du code
Je me demande cela ne pourrait pas provenir d'un TFilenameedit placé en amont avec un filtre sur ma base, activé en même temps que la form.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 procedure Tfich_sauv_rest_base.btactionsauv_restClick(Sender: TObject); begin if messagedlg('CONFIRMEZ-VOUS CETTE OPERATION ? SOURCE '+LabeledEdit_chemin_base_source.Text +' VERS DESTINATION ' + edit2.Text,mtconfirmation,[mbyes,mbcancel],0)<>mryes then begin Sysutils.Abort; end else module_bases.ZConnection1.Connected:=false; if CopyFile(PChar(scrfilename),PChar(destfilename),false) then showmessage ('OPERATION REUSSIE !') else showmessage (SysErrorMessage(GetLastOSError)); end;
J'ai vérifié, la copie (via Windows) fonctionne bien, quand mon petit programme est fermé, c'est donc bien une erreur chez moi.
Partager