Suchergebnisse
Suchergebnisse 1-28 von insgesamt 28.
Hier erfahren Sie, wie einfach Sie Ihren Browser aktualisieren können.
-
Das effektivste wäre wohl: Selber probieren und Zeit messen. Es ist Dein PC. Solche Sachen einfach selbst probieren. Geht schneller als im Forum zu posten. Klar gibt es Situationen, in denen man eine Forumsfrage stellen sollte, aber vergleichende Geschwindigkeitsmessungen gehören m.E. da nicht dazu.
-
Ach Moment. Du willst, dass es gleichzeitig läuft? Dann geht das auch so: VB.NET-Quellcode (12 Zeilen) In Methode1 wird also zippeAsync aufgerufen, dort wird zippen gestartet und sofort danach wieder zu Methode1 zurückgekehrt (entspr. Erklärung in Post#9). Dann wird gleich kopiereAsync aufgerufen, dort wird kopieren gestartet und ebenfalls zurückgekehrt. Also werden zippen und kopieren nahezu gleichzeitig parallel gestartet und nebeneinander ausgeführt.
-
Dann kannste zippen und kopieren aber wieder zu normalen Subs machen. Der Punkt ist: Was erwartest Du bei dieser Zeile? VB.NET-Quellcode (1 Zeile)Wenn man davon absieht, dass = True jeweils überflüssig ist, kann das doch gar nicht so bei asynchronen/nebenläufigen Methodenaufrufen funktionieren. Denn das Resultat steht doch erst dann fest, wenn die asynchronen Methoden fertig sind. Und wenn Du darauf warten willst, brauchst Du es gar nicht erst asynchron laufen zu lassen. Deine jetzige Lösung ist…
-
Achso, ja gut. Ne TextBox kannst Du schon machen, solange die Exception innherlab des Form-Codes auftritt. Denn in einer sonstigen Klasse hast Du ja offiziell/standardmäßig keinen Zugriff auf ein FormControl wie ne TextBox. ########## @Amelie: Bedenke aber, wieviele Exception-Infos Dir durch eine MessageBox oder gar einzeilige TextBox verloren gehen (können). Ich protokolliere in einer Datei, falls ich die Exception nicht sinnvoll/im Voraus behandeln kann:- Zeitpunkt der Exception - Programm - d…
-
Dann versteh ich Deine (Programm)Logik nicht. Da steht doch: VB.NET-Quellcode (5 Zeilen) Also: Wenn "Klass.Workdir & tempdir & sourceFile" der Pfad eine existierenden Datei ist und die Datei Test.txt heißt, dann schreibe in die Listbox Test.txtnicht vorhanden (ja, da fehlt ein Leerzeichen in dem Text, denn so steht es (falsch) im Code). Aber warum sollte - wenn die Datei exisiert - in die ListBox geschrieben werden, dass sie nicht vorhanden ist? Da ergibt die Codelogik keinen Sinn. Das mit dem I…
-
Nochemal langsam. Ich nehm Deinen Codeausschnitt nochmal her: VB.NET-Quellcode (8 Zeilen) Dein Code sagt: Wenn die Datei vorhanden ist, schreib in die ListBox "Datei nicht vorhanden". Das ist offensichtlich falsch, denn das ergibt keinen Sinn. Damit schreibst Du eine Lüge in die ListBox rein. Das mit dem "nicht vorhanden" gehört also in den Else-Bereich. Außerdem wird eine Datei kopiert, wenn eine andere nicht da ist. Das versteh ich nicht. If Not Directory.Exists(Klass.Workdir & tempdir) Then D…
-
Das sind mir zu viele Spekulatiusstückchen. Also füge ich mal ein paar Daten ein und Du sagst mir, ob das plausibel ist. in tb_auswahl (ausbaufähiger Control-Name; ist das ne TextBox?) steht drin: Quellcode (3 Zeilen) tb_eingabe (ganz schlechter Control-Name) ist wohl für das Quellverzeichnis, z.B. E:\Quelle Dann steht im Code also:- Gehe alle Zeilen in der tb_auswahl durch. - Such mir für jeden Eintrag darin die Dateien mit dem Namen (also zuerst "UserNames") mit der (irgendwo) angegebenen Exte…
-
Dann müsste wohl der Code so aussehen: VB.NET-Quellcode (11 Zeilen) Denn: Wieso sollte die Datei nicht gefunden werden, wenn sie doch über GetFiles ermittelt wurde? Oder geht es darum, dass die Datei nicht kopiert werden soll, wenn sie schon am Ziel ist? Was hat das dann aber mit "Datei nicht gefunden" zu tun? Welche Datei kann nicht gefunden werden? Nenn mal bitte ein konkretes Beispiel, bei dem eine Datei nicht gefunden wird.
-
Einer von uns hat einen Denkfehler. For Each filename As String In Directory.GetFiles(tb_eingabe.Text, "*" & source & FileExtension, SearchOption.AllDirectories) wird nur die Dateien durchgehen, die auch wirklich da sind. Wenn Du damit nach einer Datei suchst, die so nicht exisiert, dann wird dafür die Schleife auch nicht ausgeführt. Die Datei wird komplett ignoriert. Ein Beispiel: Du hast Dein Verzeichnis G:\ mit den Dateien AAA.jpg, AAA.cr2 und BBB.jpg und Du suchst mit For Each filename As St…
-
Nee. Wenn Du Code kopierst, dann richtig. Nicht lb_worktarget.Items.Add("Die Datei {source & FileExtension} gibbet nüsch.") sondern lb_worktarget.Items.Add($"Die Datei {source & FileExtension} gibbet nüsch.") Da ist ein Dollarzeichen nach dem Add, was zu einer interpolierten Zeichenfolge führt und die Bedeutung verändert. Probier es mal. Dass mein Codevorschlag nicht funktioniert, kann ich ohne Gesamtcode nicht erklären. Bei mir funktioniert's. Was Deinen Vorschlag zunichte macht: Du wolltest do…
-
Mit welchem Uralt-.NET-Framework arbeitest Du? 4.0? Naja, dann eben lb_worktarget.Items.Add("Die Datei " & source & FileExtension & " gibbet nüsch.") Eh. Schau nochmal in Post#49. Die For-Schleife wird für nichtexistente Dateien NICHT ausgeführt. Die If-Abfrage gehört also nicht in die For-Schleife, sondern davor. VB.NET-Quellcode (17 Zeilen) ########## Und dann hat man das GetFiles doppelt und kann es somit zusammenfassen: VB.NET-Quellcode (18 Zeilen)
-
Naja, mal sollte schon erkennen, wofür ein Control ist. tb_Eingabe - hm, ok, ich kann da was eingeben bzw. der User hat da was eingegeben. Aber was? Das sollte man aus dem Controlnamen schon erfahren. Also wäre m.E. besser: tb_Quellverzeichnis bzw. tb_SourceDirectory*. Oder eigentlich gar tb_Quellverzeichnispfad bzw. tb_SourceDirectoryPath*, aber man kann's auch übertreiben. Und tb_auswahl? Naja, wieso Auswahl? Der User kann mit CheckedListBoxen, CheckBoxen, RadioButtons, … was auswählen. Aber i…
-
Zitat von Amelie: „Nun möchte ich die Schriftfarbe ändern. VB.NET-Quellcode Me.Invoke(Sub() lstView.Items.Add(New ListViewItem(New String() {Datei.Name, CStr(filesize), "MB", CStr(ForeColor = Color.Blue)}))) Hier tut sich nix. Farbe bleibt schwarz.... Fehler werden keine angezeigt.“Das ist jetzt aber nicht Dein Ernst-August, oder? Dein Code sagt: »Füge dem ListView ein neues Item hinzu, und zwar soll dieses Item aus ein paar SubItems bestehen, die folgende Texte haben: den Dateinamen, die Dateig…
-
Dann setz die Farbe in Abhängigkeit von der Item-Anzahl, z.B. wenn Anzahl gerade ist, dann schwarze, wenn ungerade, dann blau. VB.NET-Quellcode (3 Zeilen) so aus dem Kopf heraus; ja, da zur Sicherheit lieber Invoke. ########## Ach ja: lstView ist für ein ListView ein ziemlich … Nullaussage-Name. Und: ListView ist für sowas die zweite Wahl. Für tabellarische Daten gibt's das DataGridView (DGV).
-
Warum arbeitest Du jetzt mit OwnerDrawing? Geht doch auch ohne. Wenn Du aber dabei bleibst, musst Du selbst dafür sorgen, dass alle Texte erscheinen. Aber da Du mit e.Graphics.DrawString nur das 1. SubItem (e.Item.Text) zeichnest/schreiben lässt, kann ich auch nicht helfen. Musst schon alle zeichnen/schreiben.
-
Manchmal glaub ich, Du probierst einfach wild herum, ohne Dir bewusst zu werden, was Du machst. in der Zeile wandelst Du eine Zahl in einen Text um und dann wieder zurück in die Zahl. Also wird aus z.B. 3,14 zuerst ein "003,140"-Text und dann wieder durch das CDbl die 3,14. Im Endeffekt: nix gewonnen, nur verschwendete Zeit. Dein ToString("N3") oder wasauchimmer musst Du dort hernehmen, wo Du das ListViewItem erstellst. Nur dort interessiert die Zahl als Text.