![]() |
Fehler mit CopyFile?!
Hallo,
folgender Code kopiert nicht alle Dateien:
Delphi-Quellcode:
Wo ist denn da ein Fehler?
if not (copyfile(PChar(pfad +'\adressen.adt'),PChar(ExtractFilePath(ParamStr(0))+ '\daten\adressen.adt'),false)) and
not (copyfile(PChar(pfad +'\ab.ini'),PChar(ExtractFilePath(ParamStr(0))+ '\daten\ab.ini'),false)) and not (copyfile(PChar(pfad +'\search.ini'),PChar(ExtractFilePath(ParamStr(0))+ '\daten\search.ini'),false)) and not (copyfile(PChar(pfad +'\user.ini'),PChar(ExtractFilePath(ParamStr(0))+ '\daten\user.ini'),false)) then begin Viele Grüße... |
Re: Fehler mit CopyFile?!
Welche kopiert er nicht?
Hast du die einzelnen Kopiervorgänge mal unabhängig voneinander ausgeführt? |
Re: Fehler mit CopyFile?!
Hi, nein einzeln probiert habe ichs noch nicht. Es wird nur die erste Datei kopiert.
//Edit: user.ini (letzter Aufruf) klappt schonmal nicht allein |
Re: Fehler mit CopyFile?!
Was sagt denn
![]() |
Re: Fehler mit CopyFile?!
Hallo Grolle,
Zitat:
Gruß Hawkeye |
Re: Fehler mit CopyFile?!
Zitat:
|
Re: Fehler mit CopyFile?!
Was heißt nix?
Muß doch mindestens 0 sein, nix geht nicht. Was steht in der Pfad Variable? Und ist die Option "Boolische Ausdrücke Vollständig" eingeschaltet? Edit: Bei ExtractFilePath muß nicht '\daten' geschrieben werden, sonst sinds '\\daten' |
Re: Fehler mit CopyFile?!
Hi,
habs jetzt nochmal umgeschrieben. Getlasterror sagt: Der Vorgang wurde erfolgreich beendet. Die Dateien wurden aber nicht kopiert. Hier der relevante Code:
Delphi-Quellcode:
if SelectDirectory('Bitte Ordner auswählen:', '' ,pfad) then
begin AdsConnection1.IsConnected := false; if (copyfile(PChar(pfad +'\adressen.adt'),PChar(ExtractFilePath(ParamStr(0))+ 'daten\adressen.adt'),false)) and (copyfile(PChar(pfad +'\ab.ini'),PChar(ExtractFilePath(ParamStr(0))+ 'daten\ab.ini'),false)) and (copyfile(PChar(pfad +'\search.ini'),PChar(ExtractFilePath(ParamStr(0))+ 'daten\search.ini'),false)) and (copyfile(PChar(pfad +'\user.ini'),PChar(ExtractFilePath(ParamStr(0))+ 'daten\user.ini'),false)) then begin AdsConnection1.IsConnected := true; AdsTable1.Active := true; Statusbar1.Panels.Items[1].Text := IntToStr(ADSTable1.recordcount); MessageDlg(' Die Wiederherstellung der Datenbank war erfolgreich! ',mtInformation,[mbOK],0); end else begin AdsConnection1.IsConnected := true; AdsTable1.Active := true; Statusbar1.Panels.Items[1].Text := IntToStr(ADSTable1.recordcount); MessageDlg(' Fehler bei der Wiederherstellung der Datenbank! ',mtError,[mbOK],0); end; end; |
Re: Fehler mit CopyFile?!
Nochmals:
Ist die Option "Boolische Ausdrücke Vollständig" eingeschaltet? Kopiert er 1, 2, keine? Kopiert er sie woanders hin? Schon geprüft, was in der Pfad Variable steht? |
Re: Fehler mit CopyFile?!
Zitat:
|
Re: Fehler mit CopyFile?!
Projekt -> Optionen, Reiter Compiler.
Mag sein, das es bei Deiner Delphi Version anders zu finden ist, ggf. in die OH gucken. Zitat:
|
Re: Fehler mit CopyFile?!
Wo hast du das GetLastError aufgerufen? Mach mal alles einzelN
Delphi-Quellcode:
if not copyfile() then
ShowMessage(SysErrorMessage(GetLastError)); if not copyfile() then ShowMessage(SysErrorMessage(GetLastError)); if not copyfile() then ShowMessage(SysErrorMessage(GetLastError)); |
Re: Fehler mit CopyFile?!
Hallo,
die Variable Pfad ist korrekt. 1 wird richtig kopiert. Habe jetzt überall GetLastError eingefügt. Beim ersten kommt komischerweise: Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wir. Bei allen anderen kommt: Der Vorgang wurde erfolgreich beendet. |
Re: Fehler mit CopyFile?!
Selbsterklärend...
Also mußt Du gucken, wo die Datei geöffnet und nicht geschlossen wird. |
Re: Fehler mit CopyFile?!
Dito! Danke euch :thumb:
|
Re: Fehler mit CopyFile?!
Hallo,
Zitat:
Gruß xaromz |
Re: Fehler mit CopyFile?!
Wenn das eingeschaltet ist, kann/gibt GetLastError einen falschen Wert zurück (geben), weil nur das Ergebnis des letzten CopyFile angezeigt wird.
Außer man verwendet Luckies Methode. Jetzt alles klaro?! Grüßle! |
Re: Fehler mit CopyFile?!
Hallo,
Zitat:
Gruß xaromz |
Re: Fehler mit CopyFile?!
Ende gut, alles gut... :mrgreen:
Sorry, wenn's falsch rum rüber kam. :hi: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz