Problema con un thread

10/09/2005 - 17:16 por Ch0rY | Informe spam
Estoy usando un Thread para recorrer un listview y comprobar si los
archivos del listview existen en un servidor y obtener su tamaño, pero solo
me funciona con dos items, y el resto no hace nada, q puede ser?

Este es el codigo

Imports System.Net
Imports System.Threading

Dim myThreadDelegate As New ThreadStart(AddressOf Mirar)
Dim myThread As Thread

Private Sub btn_Busca_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btn_Busca.Click
If Not myThread.IsAlive Then myThread.Start()
End Sub

Private Sub Mirar()
Dim lwItem As ListViewItem
For Each lwItem In lstMapas.CheckedItems
'For Each lwItem In lstMapas.Items
'If lwItem.Checked Then
lwItem.EnsureVisible()
Dim req As HttpWebRequest
Mapa = lwItem.SubItems(0).Text
Dim u As New Uri(Nav.BaseAddress & "Mapas/" & Mapa & ".exe")
req = HttpWebRequest.Create(u)
req.Method = "GET"
Dim rsp As WebResponse
rsp = req.GetResponse
lwItem.SubItems(3).Text = Fix(rsp.ContentLength / 1024).ToString
'End If
Next
End Sub

podeis ayudarme?

gracias

Preguntas similare

Leer las respuestas

#1 Eduardo A. Morcillo [MS MVP VB]
10/09/2005 - 21:06 | Informe spam
Tienes que comprobar si ocurre alguna excepcion. Por ejemplo si el archivo
no existe en el servidor se generara una excepcion y las excepciones
generadas en un thread quedan ocultas porque no causan que la aplicacion
finalice sino que causan que el thread finalice.

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
http://mvp.support.microsoft.com/pr...4EF5A4191C
Respuesta Responder a este mensaje
#2 Ch0rY
10/09/2005 - 22:23 | Informe spam
el Problema debia ser que sobrecargaba el WebResponse

Imports System.Net
Imports System.Threading

Dim myThreadDelegate As New ThreadStart(AddressOf Mirar)
Dim myThread As Thread

Private Sub btn_Busca_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btn_Busca.Click
If Not myThread.IsAlive Then myThread.Start()
End Sub

Private Sub Mirar()
Dim lwItem As ListViewItem
For Each lwItem In lstMapas.CheckedItems
'For Each lwItem In lstMapas.Items
'If lwItem.Checked Then
lwItem.EnsureVisible()
Dim req As HttpWebRequest
Mapa = lwItem.SubItems(0).Text
Dim u As New Uri(Nav.BaseAddress & "Mapas/" & Mapa & ".exe")
req = HttpWebRequest.Create(u)
req.Method = "GET"
Dim rsp As WebResponse
rsp = req.GetResponse
lwItem.SubItems(3).Text = Fix(rsp.ContentLength / 1024).ToString



'he añadido esta linea aqui

rsp.close

'End If
Next
End Sub



gracias, por la ayuda
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida