Ordner Inhalt in einen Ziel Ordner kopieren

  • VB.NET

Es gibt 19 Antworten in diesem Thema. Der letzte Beitrag () ist von DarkestMan.

    Ordner Inhalt in einen Ziel Ordner kopieren

    Hallo,


    Ich würde gerne den Inhalt von Ordner1 in den Ordner2 Kopieren. Aber leider habe ich keine Ahnung wie das geht :S

    Weil das Programm was ich machen will soll BackUps von einem Ordner erstellen und im Appdata Verzeichnis in einem Speziellen Ordner abspeichern !
    Wenn man das BackUp installieren will soll man mittels Listbox das BackUp auswählen und dann auf "BackUp installieren" drücken, danach soll Ordner Inhalt z.b vom BackUp "BackUp_1" in den Ordner "Ordner2" der sich am Desktop befindet Kopieren


    Ich habe alles schon hinbekommen aber das mit dem Inhalt des Ordners Kopieren schaffe ich nicht :S

    Bitte helft mir

    Mfg
    DarkestMan
    Ich will den Kompletten Inhalt kopieren weil es manchmal auch andere Dateien sein könnten oder weniger beziehungsweise mehr


    Edit by Manschula: Warum wird der Vorredner komplett zitiert? --> (Unnötiges) Vollzitat entfernt

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Manschula“ ()

    „Was daraus gefolgert werden kann ist, dass jeder intelligentere User sein Geld lieber für Bier ausgibt, um einen schönen Rausch zu haben, und nicht dieses Ranzprodukt.“

    -Auszug aus einer Unterhaltung über das iPhone und dessen Vermarktung.
    Danke,

    Ich habe gerade eine Methode gefunden wo ich aber dachte das die den Ordner kopiert und nicht nur den Inhalt jedenfalls is die so:

    VB.NET-Quellcode

    1. My.Computer.FileSystem.CopyDirectory(Ordner1, Ordner2, True)



    Doch das Problem jetzt ist das ich diesen Code Probiert habe von einem Ordner auf dem Desktop in einen Anderen Ordner auf den Desktop zu kopieren (den Inhalt) dies hat Funktioniert , doch wenn ich das gleiche mache nur das der Ordner1 im Appdata verzeichnis liegt Funktioniert das nicht ! Keine Fehlermeldung garnichts O.o

    Wieso Funktioniert das nicht ? :(

    DarkestMan schrieb:

    Wieso Funktioniert das nicht ? :(
    Keine Ahnung.
    Vielleicht postest Du mal den komplette Code dazu.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    RodFromGermany schrieb:

    Vielleicht postest Du mal den komplette Code dazu.
    Hier der Code:

    VB.NET-Quellcode

    1. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    2. Try
    3. BackUp.Text = My.Computer.FileSystem.ReadAllText(Application.StartupPath & "\BackUp.txt")
    4. BackUpPfad.Text = My.Computer.FileSystem.ReadAllText(Application.StartupPath & "\BackUpPfad.txt")
    5. BackUpServer.Text = My.Computer.FileSystem.ReadAllText(Application.StartupPath & "\BackUpServer.txt")
    6. Installer.RunWorkerAsync()
    7. Catch ex As Exception
    8. If MsgBox("SCHWERWIEGENDER FEHLER", vbOK, "Error") Then
    9. Application.Exit()
    10. End If
    11. End Try
    12. End Sub
    13. Private Sub Installer_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles Installer.DoWork
    14. Directory.Delete(BackUpPfad.Text, True)
    15. My.Computer.FileSystem.CreateDirectory(BackUpPfad.Text)
    16. My.Computer.FileSystem.CopyDirectory(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\Server Launcher\BackUp\" & BackUpServer.Text & "\" & BackUp.Text, BackUpPfad.Text)
    17. End Sub
    18. Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    19. Process.Start(BackUpPfad.Text & "\Server Interface.exe")
    20. Application.Exit()
    21. End Sub
    22. Private Sub Installer_RunWorkerCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.RunWorkerCompletedEventArgs) Handles Installer.RunWorkerCompleted
    23. WirdInstalliert.Visible = False
    24. Laden.Visible = False
    25. Fertig1.Visible = True
    26. Fertig.Visible = True
    27. ServerInterface.Visible = True
    28. Timer1.Start()
    29. End Sub
    30. End Class


    In der BackUp.txt steht "Reallife"

    In der BackUpPfad.txt steht "C:\Users\Marcel\Desktop\Reallife"

    In der BackUpServer.txt steht "Reallife"

    Der Timer ist mit 10 Sekunden verzögerung
    Kopierst Du die Dateien ggf. auf sich selbst?
    Kopierst Du die Dateien ggf. auf einen Server?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Es wird ein zuvor erstelltes BackUP von einem Server (Bukkit-Server) installiert indem der Jetzige Ordner des Servers Gelöscht wird und das ausgewählte BackUp wird In den Ordner Kopiert wo der Server vorhin war


    Edit by Manschula: Warum wird der Vorredner komplett zitiert? --> (Unnötiges) Vollzitat entfernt

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Manschula“ ()

    Kannst Du das bitte mal einfach skizzieren?
    Server: Ordner löschen
    Copy Featplatte => Server
    oder so?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    RodFromGermany schrieb:

    Kannst Du das bitte mal einfach skizzieren?
    BackUp wird über Server Interface.exe erstellt > \Appdata\Roaming\Server Launcher\BackUp\Reallife\BackUp_1
    BackUp.txt wird erstellt > \Appdata\Roaming\Server Launcher\BackUp\Installer\Reallife\BackUp.txt
    BackUpPfad.txt wird erstellt > \Appdata\Roaming\Server Launcher\BackUp\Installer\Reallife\BackUpPfad.txt
    BackUpServer.txt wird erstellt > \Appdata\Roaming\Server Launcher\BackUp\Installer\Reallife\BackUpServer.txt
    BackUp.exe wird heruntergeladen > \Appdata\Roaming\Server Launcher\BackUp\Installer\Reallife\BackUp.exe
    BackUp.exe wird gestartet > \Appdata\Roaming\Server Launcher\BackUp\Installer\Reallife\BackUp.exe
    Server Interface.exe wird geschlossen
    BackUp.exe 10 Sekunden warten
    BackUp.exe Löscht den Server Ordner > \Desktop\Reallife
    BackUp.exe Kopiert das Ausgewählte BackUp auf den Desktop und benennt es in "Reallife" um
    BackUp.exe startet die Server Interface.exe
    BackUp.exe Schließt sich
    Fertig !


    Doch bei dem Vorgang "Kopiert das Ausgewählte BackUp...." geht es nicht da der Ordner danach Leer ist obwohl in dem BackUp Ordner Dateien enthalten sind


    Edit by Manschula: Die Farbe Rot ist der Moderation vorbehalten! --> Kolorierung entfernt

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „DarkestMan“ ()

    1. Rot darfst Du nicht verwenden, editiere mal bitte Deinen Post.
    2. Was nützt eine ellenlange Pfadangabe, wenn die Information "Server" fehlt. :S
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    RodFromGermany schrieb:

    Was nützt eine ellenlange Pfadangabe, wenn die Information "Server" fehlt.
    Was meinst du damit ?

    EDIT: Welche Information über den Server ? Es wird ja auf meinem PC gemacht und auf keinen Server und es wird auch nur der Ordner wo sich der Server befindet kopiert

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „DarkestMan“ ()

    Datei "xxx.yyy" wird kopiert von meinem Rechner in ein anderes Verzeichnis. :?:
    Datei "xxx.yyy" wird kopiert von meinem Rechner in ein anderes Verzeichnis auf demselben Rechner.
    Datei "xxx.yyy" wird kopiert von meinem Rechner in ein anderes Verzeichnis auf einem Server.
    Datei "xxx.yyy" wird kopiert von meinem Rechner in ein anderes Verzeichnis auf einem Rechner in meiner Arbeitsgruppe.
    ....
    8o
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    RodFromGermany schrieb:

    Datei "xxx.yyy" wird kopiert von meinem Rechner in ein anderes Verzeichnis auf demselben Rechner.
    EDIT: Ich habe mir gedacht das es eventuell etwas mit den Rechten zu tun hat also hab ich eingebaut das das Programm als Administrator gestartet wird doch dies Hilft leider auch nichts

    Kannst du mir vll helfen ich verzweifle noch immer :(

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „DarkestMan“ ()

    DarkestMan schrieb:

    2te
    :?: Du nix deutsch :?:
    "Das 2. Verzeichnis" 8o
    -----
    Probier es mal mit .NET, die Namen und Pfade musst Du noch anpassen:

    VB.NET-Quellcode

    1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    2. Dim desktop As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\myTest"
    3. System.IO.Directory.CreateDirectory(desktop)
    4. For Each file In System.IO.Directory.GetFiles("c:\temp\test", "*.jpg")
    5. Dim fi As New System.IO.FileInfo(file) ' um den Namen zu separieren
    6. System.IO.File.Copy(file, desktop & "\" & fi.Name)
    7. Next
    8. End Sub
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!