Datei verschieben



  • Hallo,
    vorerst, ich bin relativ neu in der WinAPI programmiereung und hatte bisher lediglich nur C++ programmiert. Ich hoffe ich habe für diesen Beitrag das richtige Unterforum gewählt 😉

    Also ich möchte in C++ eine Datei von einem Ordner in einen anderen verschieben, und zwar in den "AppDataFolder" von einem Programm. Jetzt kenne ich aber leider den "Befehl" dafür nciht, und da es ja einige Leute gibt, die Ihr Betriebssystem nciht auf C: sondern vergleichbarem installiert haben, wollte ich nun wissen wie genau ich dabei Vorgehen kann. Ich dachte dabei an soetwas in der Art:

    PSEUDOCODE

    system("MOVE datei.txt %AppData%\Pfad\zum\Verzeichnis")
    

    könnt ihr mir helfen?? Wäre super nett 😉

    lg,
    Nemesis





  • Warum kompliziert, wenn es auch einfach geht? Ich empfehle die Funktion WinExec() hierfür.



  • könntest du mir die vielelicht mal genauer erklären??^^



  • bernibutt schrieb:

    Warum kompliziert, wenn es auch einfach geht? Ich empfehle die Funktion WinExec() hierfür.

    In wie fern hat die WinExec() Funktion irgendetwas mit dem Verschieben von Dateien zu tun?
    Diese Funktion ist dazu da, andere Programme/Anwendungen zu starten, demnach ist deine Empfehlung Schwachsinn.

    Nemesis-IL schrieb:

    könntest du mir die vielelicht mal genauer erklären??^^

    Bist du denn dem Link, den ich vorhin gepostet hab, nicht gefolgt?
    Er führt zur MSDN, genauer gesagt zur Beschreibung von genau der Funktion, die du suchst.

    Wenn du allerdings wirklich nicht weißt wie man eine Funktion die zwei Parameter erwartet benutzt, dann solltest du vielleicht erst nochmal die Programmiersprache die du zu verwenden versuchst gründlich erlernen...

    Naja, wie auch immer.

    MoveFile("test.txt", "test_moved.txt");
    


  • bernibutt schrieb:

    Warum kompliziert, wenn es auch einfach geht? Ich empfehle die Funktion WinExec() hierfür.

    Ja, genau! Warum "so wie man's macht" wenn man's auch schlechter machen kann?



  • Nemesis-IL schrieb:

    könntest du mir die vielelicht mal genauer erklären??^^

    Die Funktion funktioniert ähnlich wie die system() Funktion, nur hat sie den Vorteil, dass sie sogar auch auf sehr alten Windows Versionen schon funktioniert (Windows 3.11) WinExec("MOVE datei.txt %AppData%\Pfad\zum\Verzeichnis").


  • Mod

    Bernibutt schrieb:

    Nemesis-IL schrieb:

    könntest du mir die vielelicht mal genauer erklären??^^

    Die Funktion funktioniert ähnlich wie die system() Funktion, nur hat sie den Vorteil, dass sie sogar auch auf sehr alten Windows Versionen schon funktioniert (Windows 3.11) WinExec("MOVE datei.txt %AppData%\Pfad\zum\Verzeichnis").

    Ja Du Witzbold! Und wenn der Benutzer eine andere Shell als CMD.EXE verwendet, dann geht nichts mehr...
    Warum soll ich zudem noch einen weiteren Prozess starten, dessen Ergebnis ich nicht mal kontrollieren kann?



  • Bernibutt schrieb:

    nur hat sie den Vorteil, dass sie sogar auch auf sehr alten Windows Versionen schon funktioniert

    Und ie hat den Vorteil, dass sie auf 64-Bit Systemen wahrscheinlich nicht mehr läuft da sie nur noch für die Kompatibilität zu 16-Bit Programmen vorhanden ist. Und damit wäre dann auch dein Programm glücklicherweise aus dem Verkehr gezogen.


Anmelden zum Antworten