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 |
---|---|
Steuert die Fähigkeit, auf Dateien und Ordner zuzugreifen. Zugeordnete Enumeration: Unrestricted. |
|
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