ausenliegenden Ordner kopieren und daten mit anderen ersetzen?

  • GM 8

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Versuch mal meine FileCopy DLL. Die hab ich mal vor kurzem geschrieben. Allerdings must du es erst selbst machen, dass mehrere Dateien und Ordner kopiert werden. Ich habe dafür ein Beispiel angehängt, wie ich dass gemacht habe. Es ist aber noch nicht komplett fertig. Du gibst einfach einen Ordner an, welcher kopiert werden soll, und den Zielordner. Ebenso siehst du den Fortschritt.
    Dateien
    • COPY.rar

      (38,02 kB, 124 mal heruntergeladen, zuletzt: )
  • Dafür braucht man doch keine DLL.
    Der Gamemaker bietet genügend Funktionen dafür, hier ein kleiner Auszug aus der Hilfe:


    file_exists(fname) Gibt zurück, ob die Datei mit dem angegebenen Namen existiert (true) oder nicht (false).
    file_delete(fname) Löscht die Datei mit dem angegebenen Namen.
    file_rename(oldname,newname) Benennt die Datei mit dem Namen oldname in newname.
    file_copy(fname,newname) Kopiert die Datei namens fname in newname.
    directory_exists(dname) Gibt zurück, ob das angegebene Verzeichnis existiert oder nicht.
    directory_create(dname) Erstellt ein Verzeichnis mit dem angegebenen Namen (inklusive dem Pfad), falls es nicht existiert.


    Soweit ich weiß, gibt es keine extra Funktion, um einen ganzen Ordner kopieren.
    Eine Möglichkeit wäre es also, alle Dateinamen im Ordner auszulesen, und die Dateien in einen neuen Ordner zu kopieren.
    Dafür wären diese Funktionen dann zuständig.


    file_find_first(mask,attr) Gibt den Namen der ersten Datei zurück, die mit der Maske und den Attributen übereinstimmt. Existiert keine solche Datei, wird ein Leerstring zurückgegeben. Die Maske kann einen Pfad und Auslassungszeichen enthalten, z.B. "C:\Temp\*.doc". Die Attribute geben die zusätzlichen Dateien an. (Die normalen Dateien werden also immer zurückgegeben, wenn sie mit der Maske übereinstimmen). [...]

    file_find_next() Gibt den Namen der nächsten Datei zurück, die mit der vorher angegebenen Maske und den Attributen übereinstimmt. Existiert keine solche Datei, wird ein Leerstring zurückgegeben
  • Natürlich weiß ich, dass man nicht unbedingt eine DLL dazu braucht. Aber damit kannst du auch den Fortschritt während dem kopieren feststellen. Außerdem ist da ein Beispiel dabei, wie man dass macht, dass man mehrere Dateien kopiert. Die Funktionen vom GM halten während dem kopieren ja das Spiel an.