Webclient mehrmals ausführen.

  • VB.NET

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von schnibli.

    Webclient mehrmals ausführen.

    Hallo Zusammen,

    Ich ändere auf einer Homepage mit einem Webclienten ein "Textfeld". Nun wenn ich dies nur 1 mal machen möchte Funktioniert es einwandfrei, jedoch wenn ich die gleiche Abfrage mehrmals starte, hängt sich das Form auf.

    Mein Code:

    VB.NET-Quellcode

    1. Dim client3 As New Net.WebClient
    2. client3.OpenRead("http://" & tel_ip.Text & "/prefs.htm?settings=save&redirect_time=" & txt_umleitzeit.Text)


    Kann mir jemand Helfen?
    Ich kann mit diesen Angaben auf dem Snom Telefon Interface die Angaben verstellen.
    Wie kann ich dies am besten zuverlässig und schnell bearbeiten.
    Da infos schnell versendet werden müssen

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „schnibli“ ()

    Machs z.B. so (asynchron)

    VB.NET-Quellcode

    1. Imports System.Net
    2. Module Module1
    3. Dim WithEvents wc As New WebClient()
    4. Sub Main()
    5. wc.DownloadStringAsync(New Uri("http://test.com/prefs.htm?settings=save&redirect_time="))
    6. End Sub
    7. Sub wc_EndDownloadString(ByVal sender As Object, ByVal e As DownloadStringCompletedEventArgs) Handles wc.DownloadStringCompleted
    8. 'Antwort angekommen und in e.Result verfügbar
    9. Console.WriteLine(e.Result)
    10. End Sub
    11. End Module

    Damit kannst du z.B. auch den aktuellen Progress abfangen:

    VB.NET-Quellcode

    1. Private Sub wc_DownloadProgressChanged(sender As Object, e As DownloadProgressChangedEventArgs) Handles wc.DownloadProgressChanged
    2. Console.WriteLine(e.ProgressPercentage.ToString() & "% completed")
    3. End Sub

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „creac“ ()

    Warum solltest du nichts mehr in die TextBox schreiben können? ?( So wie creac es geschrieben hat sollte es einwandfrei gehen.
    Bitte erkläre uns dein Problem etwas genauer, lies nochmal alles in Ruhe durch und schreib uns dann den Ausschnitt des Codes woran es möglicherweise jetzt mit deiner TextBox hapern könnte.
    Es existiert ein Interesse an der generellen Rezession der Applikation relativ primitiver Methoden komplimentär zur Favorisierung adäquater komplexer Algorithmen.
    ------------------------------------------------------------------------------------
    Rising Existence - das GTA V-MP Projekt mit Zukunft und Innuvation
    Ach ich Idiot.

    Programierfehler ich hab das Result in die Textbox schreiben lassen

    Edit:
    Ich würde gleich mehrere Befehle gerne in das Modul schreiben, kann ich es so Programmieren dass, ein Button gesperrt ("Enabled=false") ist solange ein "Befehl" nicht abgeschlossen ist?

    VB.NET-Quellcode

    1. Sub umleitzeit()
    2. wc.DownloadStringAsync(New Uri("http://" & Start.tel_ip.Text & "/prefs.htm?settings=save&redirect_time=" & Start.txt_umleitzeit.Text))
    3. End Sub
    4. Sub umleitnummer()
    5. wc.DownloadStringAsync(New Uri("http://" & Start.tel_ip.Text & "/prefs.htm?settings=save&redirect_time_number=" & Start.txt_umleitnummer.Text))
    6. End Sub
    7. Sub umleitung_einschalten()
    8. wc.DownloadStringAsync(New Uri("http://" & Start.tel_ip.Text & "/dummy.htm?settings=save&redirect_on_timeout=on"))
    9. End Sub
    10. Sub umleitung_auschalten()
    11. wc.DownloadStringAsync(New Uri("http://" & Start.tel_ip.Text & "/dummy.htm?settings=save&redirect_on_timeout=off"))
    12. End Sub


    zb. kann ich die Zeit ändern und dann "Gleichzeitig" die Umleitung ein und ausschalten, dies möchte ich verhindern indem der Button "Umleitung_Einschalten.enabled = false" ist

    Edit:
    ich habe es mit:

    VB.NET-Quellcode

    1. ​Private Sub wc_DownloadStringCompleted(sender As Object, e As DownloadStringCompletedEventArgs) Handles wc.DownloadStringCompleted
    2. MsgBox("hallo")
    3. End Sub

    gelöst

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „schnibli“ ()