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
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;
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.

J'ai vérifié, la copie (via Windows) fonctionne bien, quand mon petit programme est fermé, c'est donc bien une erreur chez moi.