C'è la possibilità di scrivere una procedura che copia una directory tramite un metodo ricorsivo... Questo codice è tratto da una delle mie applicazioni:
codice:Public Function GetDirName(ByVal Dir As String) As String Return Dir.Remove(0, Dir.LastIndexOf("\") + 1) End Function Public Sub CopyDirectory(ByVal Dir As String, ByVal Destination As String) Dim Dirs() As String = Directory.GetDirectories(Dir) Dim Files() As String = Directory.GetFiles(Dir) Dim S As String ' Dim Size As Double = GetDirSize(Dir) ' Dim Index As Double ' lblStatus.Text = "Copia dei file in corso..." Try MkDir(Destination) Catch IOE As IOException MsgBox("Errore di accesso alla cartella: assicurarsi che non esista una cartella con lo stesso nome e di non " + _ "stare modificando la suddetta mentre vengono eseguite le azioni di copia, quindi riprovare.", MsgBoxStyle.Exclamation) End Try For Each S In Files Application.DoEvents() FileCopy(S, Destination + "\" + Path.GetFileName(S)) ' Index += FileLen(S) ' lblAll.Text = "Copia dei file: " & CInt(Index * 100 / Size) & "%" ' prgAll.Value = CInt(Index * 100 / Size) Next For Each S In Dirs CopyDirectory(S, Destination + "\" + GetDirName(S)) Next End Sub

Rispondi quotando