Diese Funktion kopiert die Datei i_sSourcefilename von Gerät/Ordner A nach Gerät/Ordner B i_sDestinationfilename (Dateiname der Zieldatei). Ist die Zieldatei bereits vorhanden, wird die Datei nicht kopiert.
Auf folgende Geräte können Dateien kopiert werden:
ide0:
ram0:
Eigene Geräte
Dateien können auch auf Remote-Geräte kopiert werden. Das Standardgerät ist "ide0:".
Der Anwender muss den Gerätenamen, mit Ausnahme des Standardgerätenamens, in i_sSourcefilename und i_sDestinationfilename angeben. Gerätename und Dateiname müssen durch Backslash "\" getrennt sein. Es muss eine Quell- und eine Zieldatei angegeben werden. Im Dateinamen der Quell- und Zieldatei muss der Ordnername angegeben werden. Für das Rootverzeichnis gibt es keinen Ordnernamen. Alle angegebenen Zielordner müssen bereits vorhanden sein. Es werden keine neuen Zielordner erstellt. i_sSourcefilename und i_sDestinationfilename erlauben keine Platzhalter. Systemdateien werden nicht gelöscht. Das bedeutet, Systemdateien können nicht als Zieldatei für einen Kopiervorgang angeben werden. Systemdateien dürfen aber in eine Zieldatei mit einem anderen Namen kopiert werden.
Weitere Informationen finden Sie auch unter den steuerungsspezifischen Systemdateien und den allgemeinen Systemdateien.
Die Funktion FC_CopyFile() liefert im Erfolgsfall als Ergebnis 0. Wird ein Fehler festgestellt, wird im Ergebnis ein negativer Wert übergeben. Die Dauer des Kopiervorgangs ist abhängig von der Größe der zu kopierenden Datei und vom verwendeten Datenspeicher. Bei Verwendung von CompactFlash beträgt die Laufzeit üblicherweise 10 ms. Bei Verwendung von Netzwerklaufwerken über ein Remote-Gerät kann das Kopieren einer Datei einige Sekunden dauern.
Eingang |
Datentyp |
Beschreibung |
---|---|---|
i_sSourceFilename |
STRING[80] |
Dateiname der Quelldatei |
i_sDestinationFilename |
STRING[80] |
Dateiname der Zieldatei |
Datentyp |
Beschreibung |
---|---|
DINT |
0: Kopiervorgang erfolgreich. -1: Kopiervorgang nicht erfolgreich, Zieldatei bereits vorhanden. -2: Quelldatei nicht vorhanden. -4: Platzhalter in "i_sSourceFilename" und/oder "i_sDestinationFilename". -5: Zieldatei ist eine Systemdatei. -6: Kopiervorgang nicht erfolgreich, allgemeiner Fehler. |
FC_CopyFile ('ide0:\test.txt', 'ide0:\testneu.txt');
Kopiert die Datei "test.txt" vom Gerät "ide0:" in die Datei "testneu.txt" auf dem Gerät "ide0:".
FC_CopyFile ('test.txt', 'testneu.txt');
Kopiert die Datei "test.txt" vom Gerät "ide0:" in die Datei "testneu.txt" auf dem Gerät "ide0:".
FC_CopyFile ('ide0:\test.txt', 'ide0:\testdir\test.txt');
Kopiert die Datei "test.txt" vom Gerät "ide0:" in die Datei "test.txt" auf dem Gerät "ide0:" im Ordner "testdir". Der Ordner "testdir" muss bereits vorhanden sein.
FC_CopyFile ('ide0:\test.txt', 'ide0:\test.txt');
Fehler: Die Datei kann nicht auf sich selbst kopiert werden.
FC_CopyFile ('ide0:\test.txt', 'ram0:\test.txt');
Kopiert die Datei "text.txt" vom Gerät "ide0:" in die Datei "test.txt" auf dem Gerät "ram0:"
FC_CopyFile(''test.out,'max4.out);
Fehler: Die Zieldatei ist eine Systemdatei.
FC_CopyFile('max4.out','test4.out');
Kopiert die Firmware in die Datei "test4.out" auf dem Gerät "ide0:".
FC_CopyFile'ide0:\*.txt', 'ram0:\test.txt');
Fehler: Platzhalter im Dateinamen.