Programmprozess automatisch unterbrechen

mikels

Grünschnabel
Hallo zusammen,

ich habe da Mal eine Frage. Kann man den Programmcode mitten in einer Prozedur unterbrechen, bis ein bestimmtes Ereignis eintritt?

ein sehr unelegantes Beispiel:

While WebBrowser.Busy = True

EndWhile
 
Danke erstmals für die schnelle Antwort.

Eine wirlich saubere Sache. Ich habe versucht diese ManuelResetEvent Class auf mein Programm zu übertragen. Leider ist damit auch ein Problem entstanden. Vielleicht kannst du mir da auch weiter helfen.

Code:
Public Class Internet
    Dim manualEvent As ManualResetEvent

    Sub New()
        manualEvent = New ManualResetEvent(False)
    End Sub

    Private Sub Navigate(ByVal strUrl As String)
        WebBrowser.Navigate(strUrl, 0, "", "Information sent to host", "Content-Type:application/x-www-form-urlencoded")
        manualEvent.WaitOne()
        manualEvent.Reset()
    End Sub

    Private Sub WebBrowser_DownloadComplete(ByVal sender As Object, ByVal e As System.EventArgs) Handles WebBrowser.DownloadComplete
        manualEvent.Set()
    End Sub
End Class

Das Problem liegt darin, dass es die WebBrowser_DownloadComplete-Prozedur nach dem Navigieren nicht aufruft. Bis zum manualEvent.WaitOne() läuft alles erwartungsgemäss ab, danach passiert nichts mehr.
 
Zurück