Auch auf die Gefahr hin, dass der ErfinderDesRades jetzt ganz laut aufstöhnt, ich stelle meine Frage trotzdem
Ich habe als blutiger Anfänger ein kleines Programm geschrieben, das zwischen zwei Rechnergruppen (nennen wir sie A-F und 1-10) sehr große Dateien hin und her kopiert. Das Programm selbst läuft auf einem unbeteiligten Rechner. Aufgrund meines anfangs erwähnten Kenntnisstandes habe ich in ein Forms mehrere Backgroundworker integriert, was eigentlich hervorragend funktioniert. Allerdings wird es unübersichtlich, wenn ich die Sache noch skalieren möchte.
Nun meine Grundsatzfrage:
Wenn ich von der bestehenden Lösung weg möchte und eine Klasse schreibe, die genau einen Kopiervorgang durchführt - kann ich diese, weil die Kopiervorgänge sehr lange dauern - mehrfach aufrufen und wie würde ich diverse Parameter übergeben? Nehmen wir an, in der Klasse ist ein String als Kopierziel deklariert. Rufe ich die Klasse nun ein zweites Mal auf - wird die Variable "Kopierziel" dort überschrieben oder ist das "gekapselt"?
(Simultaner) Aufruf dann mit
??
Danke für Eure geduldigen Antworten sagt schon mal der
Vielfrager
![^^](https://www.vb-paradise.de/wcf/images/smilies/grin.png)
Ich habe als blutiger Anfänger ein kleines Programm geschrieben, das zwischen zwei Rechnergruppen (nennen wir sie A-F und 1-10) sehr große Dateien hin und her kopiert. Das Programm selbst läuft auf einem unbeteiligten Rechner. Aufgrund meines anfangs erwähnten Kenntnisstandes habe ich in ein Forms mehrere Backgroundworker integriert, was eigentlich hervorragend funktioniert. Allerdings wird es unübersichtlich, wenn ich die Sache noch skalieren möchte.
Nun meine Grundsatzfrage:
Wenn ich von der bestehenden Lösung weg möchte und eine Klasse schreibe, die genau einen Kopiervorgang durchführt - kann ich diese, weil die Kopiervorgänge sehr lange dauern - mehrfach aufrufen und wie würde ich diverse Parameter übergeben? Nehmen wir an, in der Klasse ist ein String als Kopierziel deklariert. Rufe ich die Klasse nun ein zweites Mal auf - wird die Variable "Kopierziel" dort überschrieben oder ist das "gekapselt"?
VB.NET-Quellcode
- Public Class superkopierer
- Public source As String
- Public destination As String
- public Sub CopyFolder(ByVal sSrcPath As String, ByVal sDestPath As String, Optional ByVal boverwrite As Boolean = True)
- Try
- Dim oDir As New System.IO.DirectoryInfo(sSrcPath)
- Dim oFiles As System.IO.FileInfo() = oDir.GetFiles()
- Dim oFile As System.IO.FileInfo
- If Not System.IO.Directory.Exists(sDestPath) Then
- System.IO.Directory.CreateDirectory(sDestPath)
- End If
- For Each oFile In oFiles
- If oFile.Name <> ("Thumbs.db") Then
- End If
- If oFile.Name <> "Thumbs.db" And System.IO.File.Exists(sDestPath & oFile.Name) = False Then
- System.IO.File.Copy(sSrcPath & oFile.Name, sDestPath & oFile.Name, True)
- End If
- Next
- Catch ex As Exception
- main.errorlog(1, ex.Message)
- End Try
- End Sub
- End Class
(Simultaner) Aufruf dann mit
??
Danke für Eure geduldigen Antworten sagt schon mal der
Vielfrager