Hallo,
hab da ein Problem in meiner Anwendung, die es Administratoren erlaubt, über ein spezielles Menü zur Laufzeit einzelne Datenbank-Dateien (
Paradox-Datenbank) neu zu erstellen. Dazu deaktiviere ich zuvor eine Table-Komponente, die Zugriff auf die Datenbank hat, erstelle (per Update über
SQL-
Query-Komponente) die Datei neu und aktiviere die Table Komponente wieder.
Code:
if( MainForm.DBUebungenExist ) then // existiert die Datei ?
begin
SaveActiveValue1 := MainForm.MasterTable.Active;
MainForm.MasterTable.Active := False; // deaktiviere Table
FortschrittLabel.Caption := 'Lösche Uebungen.db';
MainForm.DropTable( 'Uebungen.db' ); // Lösche per DROP TABLE
end;
DBProgressBar.Stepit;
FortschrittLabel.Caption := 'Erstelle Uebungen.db';
MainForm.CreateUebungenDB; // Erstelle neu mit CREATE TABLE
if( MainForm.DBUebungenExist ) then
begin
MainForm.MasterTable.Active := SaveActiveValue1; // aktiviere Table
end;
Leider bekomme ich immer eine
Exception, da anscheinend noch andere Table Komponenten die Uebungen.db im Gebrauch haben. Außerdem werden beim Deaktivieren der Table Komponente Routinen im Programm angesprungen, deren Ausführung ich mir zu dieser Zeit nicht erklären kann !???
Wie bekomme ich heraus, welche Komponente die Uebungen.db noch geöffnet halten ?
Kann mir jemand einen Tip geben ?
Danke und Gruß
Hacki
Es ist nicht gesagt, daß es besser wird, wenn es anders wird! Wenn es aber besser werden soll, muß es anders werden! ** There are 10 different types of people in this world; those who understand binary numbers and those who don’t !