Thema: Delphi TTable Datei löschen

Einzelnen Beitrag anzeigen

Benutzerbild von glunzl
glunzl

Registriert seit: 21. Mär 2004
Ort: Reinbek
119 Beiträge
 
Delphi 7 Professional
 
#7

Re: TTable Datei löschen

  Alt 22. Mär 2004, 09:19
@ MrSpock: Danke für's Willkommen

@all: Die Tabelle wird als tempöräre Tabelle/Datei genutzt. In diese sollen Inhalte aus andere Tabellen eingefügt werden, um diese dann auszuwerten.
Z.Z. sieht das so aus:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var
begin
   // ... erzeugen der der Temp-Datei ...

  Try
    Table_Temp.DatabaseName := GetTempFolder ;
    Table_Temp.TableName := 'VA_TEMP.dbf' ;
    Table_Temp.Active := True ;
  Except Application.MessageBox('Die temp. Tabelle konnte nicht an die temp. Datei gebunden werden', 'Visuanalyse', 48) ;
  End ;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  // Löschen der Temp Datei
  Table_Temp.Active := False ;
  Table_Temp.DeleteTable ;
  If FileExists(GetTempFolder + 'VA_TEMP.dbf')
    Then If not DeleteFile(GetTempFolder + 'VA_TEMP.dbf') // TempDatei löschen
           Then Application.MessageBox('Die temporäre Datei konnte nicht gelöscht werden.' , 'Visuanalyse', 48) ;
Bei Table_Temp.DeleteTable tritt dann eine Exception der Klasse EDBEngineError, Meldung "Ungültiger Dateiname" auf.
Wenn ich die Zeile Table_Temp.DeleteTable rausnehme, erscheint halt meine MessageBox, das die Datei nicht gelöscht werden konnte.
Wenn ich Table_Temp.DeleteTable durch Table_Temp.EmptyTable ersetze, tritt an der Stelle eine Exception der Klasse EDBEngineError, Meldung "Ungültiger Parameter" auf.

Nach meinem Verständniss, müsste ich doch nur die "Verbindung" von der Tabelle zur Datei lösen und könnte sie dann löchen. Aber scheinbar langt Table_Temp.Active := False ; nicht.

Kann mir noch jemand weiterhelfen?

Gruss
Michael

[edit=Sharky]Delphi-Tags gesetzt. Mfg, Sharky[/edit]
Michael
  Mit Zitat antworten Zitat