C# FileSystem.CopyDirectory Problem

CrazyNevs

Mitglied
Hi,
ich hab ein kleines Problem und zwar funktioniert bei mir die

Code:
FileSystem.CopyDirectory(path1, newpath);
nicht und ich hab keine idee voran das liegen kann, vielleicht bin ich auch nur einfach Blind^^

Hier mal mein Programmauschnitt:

Includes:
Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;

Kopier Methoden:
Code:
        private void button1_Click(object sender, EventArgs e)
        {
            // Datumholen und Ordnernamen schreiben
            DateTime newDate = new DateTime();
            newDate = DateTime.Now;

            uname = newDate.Year + "_" + newDate.Month + "_" + newDate.Day;
            oname = "Sicherung - USB";

            // Unterverzeichnis erzeugen
            Directory.CreateDirectory(oname);

            DirectoryInfo uord = new DirectoryInfo((path2 + Convert.ToString("\\") + oname));
            uord.Create();
            
            DirectoryInfo ud = uord.CreateSubdirectory(uname);
            newpath = path2 + Convert.ToString("\\") + oname + Convert.ToString("\\") + uname;

            FileSystem.CopyDirectory.CopyDirectory(path1, newpath);
        }

        private static void CopyFolder(string sourceFolder, string targetFolder)
        {

            // Verzeichnis am Zielort erstellen

            Directory.CreateDirectory(targetFolder);



            // Alle Dateien kopieren

            string[] files = Directory.GetFiles(sourceFolder);

            foreach (string file in files)
            {

                string target = Path.Combine(targetFolder, Path.GetFileName(file));

                File.Copy(file, target, true);

            }



            // Alle Unterverzeichnisse kopieren

            string[] subSourceFolders = Directory.GetDirectories(sourceFolder);

            foreach (string subSourceFolder in subSourceFolders)
            {

                string subTargetFolder = subSourceFolder.Replace(sourceFolder, targetFolder);

                CopyFolder(subSourceFolder, subTargetFolder);

            }
        }

MfG Sven :p
 
Zuletzt bearbeitet:
Hallo CrazyNevs,

mir ist auf anhieb ein Fehler aufgefallen. Ändere mal

Code:
FileSystem.CopyDirectory.CopyDirectory(path1, newpath);
in
Code:
FileSystem.CopyDirectory(path1, newpath);

lg Bansi
 
hey danke stimmt :)
aber trotzdem ist da noch der weit aus wichtigere Fehler :)

Fehler:
Der Name "FileSystem" ist im aktuellen Kontext nicht vorhanden.

Lg Sven
 
Die richtige Seite der MSDN hättest du ja gefunden. Aber du wichtige Information hast du dir nicht angesehen:

Namespace: Microsoft.VisualBasic.FileIO
Assembly: Microsoft.VisualBasic (in microsoft.visualbasic.dll)

Das sollte dir zeigen, was zu tun ist :)
 
Naja was soll mir das sagen ich würde bei denn sagen des es sich um eine Visual Basic methode handelt da unten allerdings der C# code steht seh ich da und da kein Problem, außerdem ist liegt ja mein Fehler bei dem aufruf der Funktion.

Zudem Blicke ich nicht dadurch warum bei vielen das auf c# funktioniert und bei mir jetzt net :-( Wie wär dann die C# Lösung dafür?)
 
Das ist nicht das, was Norbert gemeint hat.
Norbert wollte dich darauf hinweisen, dass bei dir ein Assembly-Verweis fehlt, den du hinzufügen musst (und dann auch die entsprechende Using-Derektive).
 
Hmm achso ok sry^^ naja hab den verweis zugefügt hoffe man macht das so in Virsuals C# 2008 so nur leider gehts immer noch nicht. Aber hab auch nciht die Using-Derektive eingebunden außer
Code:
using System.IO;
.

Hmm vielleicht zur besseren Übersicht mal ein ein Screenshot vom code fehler + verweise :)

Screenshot

Und hier nochmal die Verweise extra :)
Verweise
 
Zuletzt bearbeitet:
Zurück