Hi all,
eine eigentlich simple Aufgabe:
Ich will ein Backup einer Datenbank erstellen (mit einer StoredProcedure welche das
DBMS bereitstellt).
Anschließend soll das erstellte Backup in eine Zip-File gepackt werden (Benutzer die TZipMaster Komponente).
Nun habe ich folgenden Code:
Delphi-Quellcode:
procedure TfrmBackup.erstelleBackup(Sender: TObject);
var
sPfad,sDateiTime,sDateiWWS, sTempPath:
String;
begin
sDateiTime := Tage[DayOfWeek(Now)] + '
Backup.zip';
sTempPath := frmBackUp.GetTimeIniPath + '
BackupTemp\';
if not connectBackupTime.IsConnected
then connectBackupTime.Connect;
qWork_Time.SQL.Text := '
EXECUTE PROCEDURE sp_BackupDatabase(' +
QuotedStr(sTempPath + '
DB\') + '
,NULL)';
qWork_Time.ExecSQL;
DBZip(sDateiTime,sTempPath + '
Time\');
end;
Im onShow der Form wird das Backup gestartet.
Nun habe ich folgendes Problem:
Manchmal (vieleicht 3 von 10 Fällen) passiert es, das die Anwedung nicht mehr richtig beendet wird (Es kommt diese Windows-Meldung
"Das Programm nicht mehr .
-> Online nach einer Lösung suchen und das Programm schließen
-> Programm schließen"
Ich habe den Verdacht, das es daran liegt das die Stored Procedure noch nicht ganz fertig ist und dann schon probiert wird die ZIP-File zu erstellen.
Gibt es einen Weg zu checken, ob diese beendet ist?
Oder meint ihr es ist etwas anderes?
Vielen dank für eure Hilfe!