Share via


My.Computer.FileSystem.CopyDirectory-Methode

Aktualisiert: November 2007

Kopiert ein Verzeichnis in ein anderes Verzeichnis.

' Usage
My.Computer.FileSystem.CopyDirectory(sourceDirectoryName ,destinationDirectoryName)
My.Computer.FileSystem.CopyDirectory(sourceDirectoryName ,destinationDirectoryName ,overwrite)
My.Computer.FileSystem.CopyDirectory(sourceDirectoryName ,destinationDirectoryName ,showUI)
My.Computer.FileSystem.CopyDirectory(sourceDirectoryName ,destinationDirectoryName ,showUI ,onUserCancel)
' Declaration
Public Sub CopyDirectory( _
   ByVal sourceDirectoryName As String, _
   ByVal destinationDirectoryName As String _
)
' -or-
Public Sub CopyDirectory( _
   ByVal sourceDirectoryName As String, _
   ByVal destinationDirectoryName As String, _
   ByVal overwrite As Boolean _
)
' -or-
Public Sub CopyDirectory( _
   ByVal sourceDirectoryName As String, _
   ByVal destinationDirectoryName As String, _
   ByVal showUI As UIOption _
)
' -or-
Public Sub CopyDirectory( _
   ByVal sourceDirectoryName As String, _
   ByVal destinationDirectoryName As String, _
   ByVal showUI As UIOption, _
   ByVal onUserCancel As UICancelOption _
)

Parameter

  • sourceDirectoryName
    String. Das zu kopierende Verzeichnis. Erforderlich.

  • destinationDirectoryName
    String. Der Speicherort, an den das Verzeichnis kopiert werden soll. Erforderlich.

  • overwrite
    Boolean. Ob vorhandene Dateien überschrieben werden sollen. Der Standardwert ist False. Erforderlich.

  • showUI
    UIOption. Ob der Status des Vorgangs visuell nachverfolgt werden soll. Der Standardwert ist UIOption.OnlyErrorDialogs. Erforderlich.

  • onUserCancel
    UICancelOption. Gibt an, was geschehen soll, wenn der Benutzer während des Vorgangs auf Abbrechen klickt. Der Standardwert ist ThrowException. Erforderlich.

Ausnahmen

Die folgenden Bedingungen können eine Ausnahme verursachen:

  • Der neue für das Verzeichnis angegebene Name enthält einen Doppelpunkt (:) oder einen Schrägstrich (\ oder /) (ArgumentException).

  • Der Pfad ist aus einem der folgenden Gründe ungültig: Es handelt sich um eine Zeichenfolge der Länge 0 (null), der Pfad enthält nur Leerzeichen, er enthält ungültige Zeichen, oder es handelt sich um einen Gerätepfad (beginnt mit \\.\) (ArgumentException).

  • Der Pfad ist ungültig, da er Nothing ist (ArgumentNullException).

  • destinationDirectoryName ist Nothing oder eine leere Zeichenfolge (ArgumentNullException).

  • Die Quelldatei ist nicht vorhanden (DirectoryNotFoundException).

  • Das Quellverzeichnis ist ein Stammverzeichnis (IOException).

  • Der kombinierte Pfad zeigt auf eine vorhandene Datei (IOException).

  • Quellpfad und Zielpfad sind identisch (IOException).

  • ShowUI ist auf UIOption.AllDialogs festgelegt, und der Benutzer bricht den Vorgang ab, oder mindestens eine Datei im Verzeichnis kann nicht kopiert werden (OperationCanceledException).

  • Der Vorgang ist zyklisch (InvalidOperationException).

  • Der Pfad enthält einen Doppelpunkt (:) (NotSupportedException).

  • Der Pfad überschreitet die im System definierte maximale Länge (PathTooLongException).

  • Ein Datei- oder Ordnername im Pfad enthält einen Doppelpunkt (:) oder hat ein ungültiges Format (NotSupportedException).

  • Der Benutzer verfügt nicht über die erforderlichen Berechtigungen zum Anzeigen des Pfads (SecurityException).

  • Eine Zieldatei ist vorhanden, doch es kann nicht auf sie zugegriffen werden (UnauthorizedAccessException).

Hinweise

Diese Methode kopiert den Inhalt des Verzeichnisses sowie das Verzeichnis selbst. Wenn das Zielverzeichnis nicht vorhanden ist, wird es erstellt. Wenn am Zielspeicherort ein Verzeichnis mit dem gleichen Namen vorhanden ist, wird der Inhalt der beiden Verzeichnisse zusammengeführt. Sie können während des Vorgangs einen neuen Namen für das Verzeichnis angeben.

Beim Kopieren von Dateien in einem Verzeichnis werden möglicherweise durch eine bestimmte Datei Ausnahmen ausgelöst, beispielsweise durch eine Datei, die während einer Zusammenführung vorhanden war, während overwrite auf False festgelegt war. Beim Auslösen solcher Ausnahmen werden sie in eine einzige Ausnahme konsolidiert, deren Data-Eigenschaft Einträge im Format eines IDictionary enthält, in dem der Datei- oder Verzeichnispfad der Schlüssel ist und die spezifische Ausnahmemeldung im entsprechenden Wert enthalten ist. Verwenden Sie For…Each zum Auflisten der Einträge.

Aufgaben

In der folgenden Tabelle werden Beispiele für Aufgaben mit der My.Computer.FileSystem.CopyDirectory-Methode aufgeführt.

Zweck

Weitere Informationen finden Sie unter

Kopieren eines Verzeichnisses

Gewusst wie: Kopieren eines Verzeichnisses in ein anderes Verzeichnis in Visual Basic

Beispiel

Im folgenden Beispiel wird das Verzeichnis TestDirectory1 in TestDirectory2 kopiert, und vorhandene Dateien werden überschrieben.

My.Computer.FileSystem.CopyDirectory("C:\TestDirectory1", "C:\TestDirectory2", True)

Ersetzen Sie C:\TestDirectory1 und C:\TestDirectory2 durch den Pfad und Namen des zu kopierenden Verzeichnisses und den Speicherort, in den Sie das Verzeichnis kopieren möchten.

Anforderungen

Namespace:Microsoft.VisualBasic.MyServices

Klasse:FileSystemProxy (ermöglicht den Zugriff auf FileSystem)

Assembly: Visual Basic-Laufzeitbibliothek (in Microsoft.VisualBasic.dll)

Verfügbarkeit nach Projekttyp

Projekttyp

Verfügbar

Windows-Anwendung

Ja

Klassenbibliothek

Ja

Konsolenanwendung

Ja

Windows-Steuerelementbibliothek

Ja

Web-Steuerelementbibliothek

Ja

Windows-Dienst

Ja

Website

Ja

Berechtigungen

Die folgenden Berechtigungen sind möglicherweise erforderlich:

Berechtigung

Beschreibung

FileIOPermission

Steuert die Fähigkeit, auf Dateien und Ordner zuzugreifen. Zugeordnete Enumeration: Unrestricted.

UIPermission

Steuert die Berechtigungen für Benutzeroberflächen und die Zwischenablage. Zugeordnete Enumeration: SafeSubWindows.

Weitere Informationen finden Sie unter Codezugriffssicherheit und unter Anfordern von Berechtigungen.

Siehe auch

Aufgaben

Gewusst wie: Abrufen einer Auflistung der Dateien in einem Verzeichnis in Visual Basic

Gewusst wie: Verschieben eines Verzeichnisses in Visual Basic

Gewusst wie: Verschieben des Inhalts eines Verzeichnisses in Visual Basic

Gewusst wie: Analysieren von Dateipfaden in Visual Basic

Gewusst wie: Ermitteln des absoluten Pfades einer Datei in Visual Basic

Gewusst wie: Ermitteln, ob ein Verzeichnis in Visual Basic vorhanden ist

Referenz

My.Computer.FileSystem-Objekt

UICancelOption-Enumeration