Visual Basic - Guardar imagenes web

Life is soft - evento anual de software empresarial
 
Vista:

Guardar imagenes web

Publicado por PAKINMAQUIN (1 intervención) el 05/10/2003 20:39:25
¿como puedo guardar una imagen desde internet automaticamente en visual basic, ya que el picture me dice que no es uina imagen valida, por ejemplo picture1.picture = www.eldominio.com/imagen.jpg ¿como la puedo guardar en disco?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Guardar imagenes web

Publicado por Cecilia Colalongo (3116 intervenciones) el 05/10/2003 23:53:39
Tienes que bajar el archivo primero. La función para hacerlo es:

Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long

Fijate con esto:

Private Declare Function GetTempPath Lib "kernel32" Alias "GetTempPathA" (ByVal nSize As Long, ByVal lpBuffer As String) As Long

Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long

Public Sub URL_To_Picture(ByVal sURL As String, pb As PictureBox)
Dim sTemp As String, sHTML As String
sTemp = GetTempDir
If Right(sTemp,1) <> "\" Then sTemp = sTemp & "\"
sTemp = sTemp & "dummy"
If Dir$(sTemp) <> "" Then Kill sTemp
Save_File_URL sTemp, sURL
pb.Picture = LoadPicture(sTemp)
Kill sTemp
End Sub

Private Function Save_File_URL(ByVal sFileName As String, ByVal sURL As String) As Long
Call URLDownloadToFile(0&, sURL, sFileName, 0, 0)
End Function
Private Function GetTempDir() As String
Dim tmp As String
tmp = Space$(256)
Call GetTempPath(Len(tmp), tmp)
GetTempDir = TrimNull(tmp)
End Function

Private Function TrimNull(item As String)
Dim pos As Integer
pos = InStr(item, Chr$(0))
If pos Then
TrimNull = Left$(item, pos - 1)
Else
TrimNull = item
End If
End Function
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar