none
Consultar un fichero URL antes de iniciar webrowser

    Pregunta

  • Hola amigos

    Quiero consultar un fichero si está online. En caso de que me responda error 404 u otro error, no mostrar en el formulario el webbrowser en mi formulario, que muestre por ejemplo label1.

    ¿Cómo puedo hacerlo?

    Gracias

    martes, 27 de septiembre de 2016 15:14

Respuestas

  • Hola Symantecc,

    [-] ...en caso de que me responda error 404 u otro error ...

    Si le agregas un Try-Catch , cuando entra al catch es porque se produjo un error, ahí tomas como si no existiera.

       Private Function existsFileInUrl(ByVal url As String) As Boolean
            Try
                Dim request = TryCast(WebRequest.Create(url), HttpWebRequest)
                request.Method = "HEAD"
                Dim response = TryCast(request.GetResponse(), HttpWebResponse)
                Return True
            Catch ex As Exception
                MessageBox.Show(ex.Message) 'Opcional
                Return False
            End Try
        End Function

    Y cuando inicia el formulario, verificas :

     Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            Dim rutaFile As String = "...alguna ruta..."
    
            If Not existsFileInUrl(rutaFile) Then
                WebBrowser1.Visible = False
                Label1.Visible = True
            End If
        End Sub

    Ten en cuenta que mediante el Exception se capturará cualquier error que se pueda producir. Si quieres saber cuando no existe, tienes que buscar el código 404 not found.

    Puedes hacerlo en el general usando Constain

      Catch ex As Exception
         If ex.Message.Contains("404") Then
            'el archivo no existe.
         End If
       .....

    O bien filtrando por un WebException, y verificando el estado.

     Catch we As WebException
         If TryCast(we.Response, HttpWebResponse).StatusCode = 404 Then
               MessageBox.Show("EL archivo no existe")
        End If
      Return False
     Catch ex As Exception ...

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    • Propuesto como respuesta Alberto PoblacionMVP martes, 27 de septiembre de 2016 19:17
    • Marcado como respuesta Symantecc miércoles, 28 de septiembre de 2016 10:16
    martes, 27 de septiembre de 2016 17:09