Hola a todos,
Estoy teniendo un problema con un programa que debería hacer lo siguiente.
Leer de un fichero una lista de datos, de los cuales se creará un enlace URL.
Lo importante viene ahora, y es que hay que ejecutar cada uno de esos enlaces en un hilo diferente y saber si se ha cargado completamente o no.
De momento lo de saber si se ha cargado lo tengo hecho con
WebBrowserDocumentCompleted, pero el tema de los hilos está pudiendo conmigo.
Resulta que ejecuto el programa y lo mismo solo da de alta 3 o 4 enlaces de 20, y encima la aplicación no consigo cerrarla ni haciendo
Application.Exit().
Os pongo un trozo de código a ver si podéis echarme una mano y explicarme que es lo que estoy haciendo mal.
Código Navegador.cs:
Ver originalpublic partial class Navegador : Form
{
private string url;
public Navegador(string URL)
{
url = URL;
InitializeComponent();
}
private void webCargada(object sender, WebBrowserDocumentCompletedEventArgs e)
{
ventanaNavegador.Url = new System.Uri(url, System.UriKind.Absolute);
Application.ExitThread();
}
}
Esta es la clase principal (os pongo solo el código relacionado)
Código Reader.cs:
Ver originalpublic Reader()
{
abrirHilos();
Application.Exit();
}
//Abre un hilo por cada enlace a dar de alta
private void abrirHilos()
{
for (count = 0; count < listadoEnlaces.Count; count++)
{
Thread navegador = new Thread(abrirNavegador);
navegador.SetApartmentState(ApartmentState.STA);
navegador.Start();
Thread.Sleep(25);
}
}
//Función que abre una ventana que un enlace
private void abrirNavegador()
{
Navegador navegador = new Navegador(listadoEnlaces[count]);
//Application.Run();
}
¡Muchísimas gracias y un saludo!