Guten Morgen zusammen,
für eine Synchronisation habe ich mir folgenden Code erstellt:
SyncA vergleicht Ordner1 und 2
Synch B vergleicht Ordber2 und 3
(in eine Listbox lasse ich das Ergebnis anzeigen)
Ich hänge leider an zwei Punkten:
- Es sollen z.B. nur *.txt Dateien abgeglichen werden
- Z.b. kann Ordner3 mal "offline" sein, d.h. hier bricht das Programm ab. Statt dessen möchte ich max. in einer Textbox "Ordner3 nicht erreichbar" schreiben, aber das Programm soll weiterlaufen
Hat bitte jemand einen Tipp für mich? Vielen Dank!
für eine Synchronisation habe ich mir folgenden Code erstellt:
SyncA vergleicht Ordner1 und 2
Synch B vergleicht Ordber2 und 3
(in eine Listbox lasse ich das Ergebnis anzeigen)
Ich hänge leider an zwei Punkten:
- Es sollen z.B. nur *.txt Dateien abgeglichen werden
- Z.b. kann Ordner3 mal "offline" sein, d.h. hier bricht das Programm ab. Statt dessen möchte ich max. in einer Textbox "Ordner3 nicht erreichbar" schreiben, aber das Programm soll weiterlaufen
Hat bitte jemand einen Tipp für mich? Vielen Dank!
VB.NET-Quellcode
- Private Sub SyncA()
- Dim Vergleich1 = System.IO.Directory.GetFiles(TextBox1.Text)
- Dim Vergleich2 = System.IO.Directory.GetFiles(TextBox2.Text)
- For Each Datei1 In Vergleich1
- Dim dtname = Datei1.Substring(TextBox1.Text.Length)
- If Not System.IO.File.Exists(TextBox2.Text & dtname) Then
- System.IO.File.Copy(Datei1, TextBox2.Text & dtname)
- ListBox1.Items.Add(Now & dtname)
- End If
- If ListBox1.Items.Count > 39 Then
- ListBox1.Items.Clear()
- ListBox1.Items.Add(Now & dtname)
- End If
- Next
- For Each Datei2 In Vergleich2
- Dim dtname = Datei2.Substring(TextBox2.Text.Length)
- If Not System.IO.File.Exists(TextBox1.Text & dtname) Then
- System.IO.File.Delete(Datei2)
- End If
- Next
- End Sub
- Private Sub SyncB()
- Dim Vergleich2 = System.IO.Directory.GetFiles(TextBox2.Text)
- Dim Vergleich3 = System.IO.Directory.GetFiles(TextBox3.Text)
- For Each Datei2 In Vergleich2
- Dim dtname = Datei2.Substring(TextBox2.Text.Length)
- If Not System.IO.File.Exists(TextBox3.Text & dtname) Then
- System.IO.File.Copy(Datei2, TextBox3.Text & dtname)
- End If
- Next
- For Each Datei3 In Vergleich3
- Dim dtname = Datei3.Substring(TextBox3.Text.Length)
- If Not System.IO.File.Exists(TextBox2.Text & dtname) Then
- System.IO.File.Delete(Datei3)
- End If
- Next
- End Sub