Fehler bei der Verwendung von CopyFile-Funktion
Hallo, ich bin mit der CopyFile
Funktion in Delphi 5. Aber die Datei wird nicht immer kopiert zum Ziel. Ich bin nicht in der Lage, um zu sehen, Fehler auch. Was ist der beste Weg, zu wissen, warum CopyFile
ausfällt?
if CopyFile(source, dest, false) then
ShowMessage('Success')
else
ShowMessage('Error');
Ich bin immer angezeigt Fehler immer auf. 🙁
Sie sollten die Verwendung von pchar (CopyFile(pchar(sourcefile), pchar(destfile), false). Um zu überprüfen, ob die Datei kopiert, verwenden Sie FileExists(destfile).. Sie können wickeln Sie Ihre CopyFile in einen try/except und reagieren auf die Ausnahme...
Das ist alles wahr, aber hilft nicht, um den Fehlercode zu identifizieren.
Primären ausfallarten: 1. Quelle nicht vorhanden ist 2. Ziel-Pfad nicht vorhanden ist 3. Dest-Datei Lesen nur 4. - Berechtigungen Fehler.
Zum Beispiel versuchen, eine Datei ersetzen, die derzeit geöffnet ist (also gesperrt)
Diese Frage wurde über die D5/7 (pre-Unicode), wo die Parameter sind
Das ist alles wahr, aber hilft nicht, um den Fehlercode zu identifizieren.
Primären ausfallarten: 1. Quelle nicht vorhanden ist 2. Ziel-Pfad nicht vorhanden ist 3. Dest-Datei Lesen nur 4. - Berechtigungen Fehler.
Zum Beispiel versuchen, eine Datei ersetzen, die derzeit geöffnet ist (also gesperrt)
Diese Frage wurde über die D5/7 (pre-Unicode), wo die Parameter sind
PChar
(gleiche wie PAnsiChar
), und CopyFile
ist eigentlich CopyFileA
unter der Haube. Egal, aber in D2010, string
ist Unicode und Delphi wird immer noch automatisch umwandeln, wenn möglich ohne die Typumwandlung, wie oben; in D2010, CopyFile
ist eigentlich CopyFileW
für die wide-string-version. Die auto-Konvertierung Delphi tut, ist ähnlich zu der Weise, die es Ihnen erlaubt, um die drop ^
operator beim Zugriff auf Klassen-Instanzen (die Zeiger) oder Datensätze wie TPoint
verwenden, so können Sie Form1.
statt Form1^.
InformationsquelleAutor Nalu | 2012-08-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn die Funktion fehlschlägt, erhalten Sie erweiterte Fehlerinformationen aufrufen der
GetLastError
- Methode oder verwenden Sie den RaiseLastOSError Methode.Überprüfen Sie dieses Beispiel
leider war ich mit delphi 5. 🙁 durch Fehler, den ich schrieb 7.
nun die erste Nachricht von Win32-API-Salbung immer gescheitert. jede Idee, warum Ihr nicht?
in Delphi 5 können Sie die
RaiseLastWin32Error
Methode.Was ist die eigentliche Fehlermeldung? Bitte nicht make-up-Fehlermeldungen.
InformationsquelleAutor RRUZ