26/07/11 13:58
Qwertj
Salve a tutti,
in un thread STA separato del mio programma lavoro chiamo un metodo che usa un WebBrowser.
Il problema è che mi si apre una finestra di IE con la pagina che ho fatto caricare precedentemente al WebBrowser.
Ad esempio:
1. Chiamo il metodo e il WebBrowser carica la pagina google.it
2. Richiamo di nuovo il metodo e il WebBrowser carica la pagina yahoo.it
3. Mi si apre IE sulla pagina google.it
4. Richiamo di nuovo il metodo e il WebBrowser carica la pagina pierotofy.it
5. Mi si apre IE sulla pagina pierotofy.it
Come risolvo?
Il codice è così:
in un thread STA separato del mio programma lavoro chiamo un metodo che usa un WebBrowser.
Il problema è che mi si apre una finestra di IE con la pagina che ho fatto caricare precedentemente al WebBrowser.
Ad esempio:
1. Chiamo il metodo e il WebBrowser carica la pagina google.it
2. Richiamo di nuovo il metodo e il WebBrowser carica la pagina yahoo.it
3. Mi si apre IE sulla pagina google.it
4. Richiamo di nuovo il metodo e il WebBrowser carica la pagina pierotofy.it
5. Mi si apre IE sulla pagina pierotofy.it
Come risolvo?
Il codice è così:
Sub STAThread Dim Urls As String() = {"http://www.google.it", "http://www.yahoo.it", "http://www.pierotofy.it"} For Each Url As String In Urls DoSomething(Url) Next End Sub Sub DoSomething(ByVal Url As String) Dim Browser As New WebBrowser Browser.ScriptErrorsSuppressed = True Browser.Visible = False Browser.Navigate(Url, False) 'aspetto che si carichi la pagina Do Threading.Thread.Sleep(50) Application.DoEvents() Loop Until ExtrapolatorBrowser.ReadyState = WebBrowserReadyState.Complete '... 'traffico un po' con gli elementi di Document (ma senza mai modificarli) '... Browser.Dispose() End Sub
aaa