Visual Basic Foro
Programación => Visual Basic 6 => Mensaje iniciado por: CDiefenthaeler en Enero 20, 2011, 05:04:50 pm
-
Hola, muy buenas ha todos, quisiera saber si alguien me puede ayudar...
Estoy desarrollando una aplicación, pero me he encontrado con un (creo) pequeño problema.
Lo que quiero es comprobar si un link, ejemplo (http://www.google.es/carpeta/archivo.html) esta disponible, o sea si existe.
Si existe, un msgbox "El archivo existe"
Si no, lo mismo pero "no existe".
He buscado, pero no he encontrado lo que quería, he visto formas de saber si el dominio existe ejemplo (http://www.google.es/), pero no con la carpeta, y archivo.
Si alguien me puede ayudar estaré muy grato.
Gracias y Salu2...
-
Option Explicit
Public Function Check_Web_Exists(ByVal sURL As String) As Boolean
'by Mr.Frog
Dim oXHTTP As Object
Set oXHTTP = CreateObject("MSXML2.XMLHTTP")
If Not UCase$(sURL) Like "HTTP:*" Then sURL = "http://" & sURL
On Error GoTo Error_
With oXHTTP
.Open "HEAD", sURL, False
.Send
Check_Web_Exists = (.Status = 200)
End With
Set oXHTTP = Nothing
Error_:
End Function
DoEvents! :P
-
buen metodo usado frog... :P, tmb lo puedes hacer con apis amigo tu q tienes el problema intentas hacer la conexion y ve q es lo q t devuelve...ahy una funcion de frog del traductor usando google puedes adaptar esa funcion a lo q kieres ..
-
Option Explicit
Declare Function InternetOpen Lib "wininet" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long
Declare Function InternetOpenUrl Lib "wininet" Alias "InternetOpenUrlA" (ByVal hInternetSession As Long, ByVal lpszUrl As String, ByVal lpszHeaders As String, ByVal dwHeadersLength As Long, ByVal dwFlags As Long, ByVal dwContext As Long) As Long
Public Const IF_NO_CACHE_WRITE = &H4000000
Public Function check_url(sURL As String) As Boolean
Dim lInet As Long
Dim lFile As Long
lInet = InternetOpen(0, 1, vbNullString, vbNullString, 0)
If lInet <> 0 Then
lFile = InternetOpenUrl(lInternet, sURL, vbNullString, 0, IF_NO_CACHE_WRITE, 0)
If lFile <> 0 Then
check_url = true
else
check_url = false
end if
Call InternetCloseHandle(lInet)
end if
es chapusa y me guie de esta funcion del frog...simple pero funcionara (?)
-
Option Explicit
Public Function Check_Web_Exists(ByVal sURL As String) As Boolean
'by Mr.Frog
Dim oXHTTP As Object
Set oXHTTP = CreateObject("MSXML2.XMLHTTP")
If Not UCase$(sURL) Like "HTTP:*" Then sURL = "http://" & sURL
On Error GoTo Error_
With oXHTTP
.Open "HEAD", sURL, False
.Send
Check_Web_Exists = (.Status = 200)
End With
Set oXHTTP = Nothing
Error_:
End Function
DoEvents! :P
Muchas gracias "Mr. Frog", me ha servido de ayuda! Te devo una! Salu2...