Visual Basic Foro

Programación => Visual Basic 6 => Mensaje iniciado por: skyweb07 en Marzo 15, 2010, 08:09:00 am

Título: [Función] GetImage [VB6]
Publicado por: skyweb07 en Marzo 15, 2010, 08:09:00 am
Bueno estaba intentando hacer algo pero me salio este churro... Saludos

Código: [Seleccionar]
Option Explicit

'*********************************************************************************************************************
'* Función           : mGetImage                                                                                      *
'* Fecha             : 15/03/2010 : 11:05                                                                             *
'* Autor             : Skyweb07 * skyweb09@hotmail.es                                                                 *
'* Referencias       : http://msdn.microsoft.com/en-us/library/ms678485%28VS.85%29.aspx                               *
'*                   : http://gpwiki.org/index.php/VB:Tutorials:WINAPI:Copy_DirectDrawSurface_To_StdPicture           *
'* Próposito         : Cargar una imagen en un picturebox o Image desde una ruta local o remota [URL]                 *
'* Comentarios       : Microsoft : El flujo debe estar en (bitmap), JPEG, WMF (metafile), ICO (icon), o formato GIF.  *
'* Soporte           : SO Minimo : Windows 2000 Professional                                                          *
'* Modo de uso       : PictureBox.picture = GetImage("URL de la imagen", Color Transparente [Opcional])               *
'**********************************************************************************************************************

Private Declare Function OleLoadPicturePath Lib "oleaut32.dll" (ByVal szURLorPath As Long, ByVal punkCaller As Long, ByVal dwReserved As Long, ByVal clrReserved As OLE_COLOR, ByRef riid As GUID, ByRef ppvRet As IPicture) As Long

Private Type GUID
    Data1 As Long
    Data2 As Integer
    Data3 As Integer
    Data4(0 To 7) As Byte
End Type
 
Public Function GetImage(hURLorPath As String, Optional TransparentColor As OLE_COLOR = vbWhite) As StdPicture
   
    Dim uID As GUID
 
    With uID ' // StdPicture GUID {7BF80980-BF32-101A-8BBB-00AA00300CAB}
        .Data1 = &H7BF80980
        .Data2 = &HBF32
        .Data3 = &H101A
        .Data4(0) = &H8B
        .Data4(1) = &HBB
        .Data4(3) = &HAA
        .Data4(5) = &H30
        .Data4(6) = &HC
        .Data4(7) = &HAB
    End With
   
    Call OleLoadPicturePath(StrPtr(hURLorPath), 0&, 0&, TransparentColor, uID, GetImage)
   
End Function
Título: Re:[Función] GetImage [VB6]
Publicado por: LeandroA en Marzo 15, 2010, 03:05:51 pm
Intereante metodo :D no conosia esa api, ademas trabaja con cache.

Gracias por el aporte