Page 1 of 1

imagen desde url

PostPosted: Wed Dec 03, 2014 4:56 pm
by mastintin
¿ Tenemos codigo para colocar en un dialogo una imagen cargada desde una url ?
Gracias anticiapadas.

Re: imagen desde url

PostPosted: Wed Dec 03, 2014 5:03 pm
by Antonio Linares
Manuel,

No me suena. Se me viene a la cabeza usar la librería curl de harbour :-)

Re: imagen desde url

PostPosted: Wed Dec 03, 2014 5:06 pm
by Willi Quintana
Hola, te sirve algo asi???? copio al clipboard una imagen y la cargo en un dialogo,, luego la inserto en una tabla

Code: Select all  Expand view

//======================================================================================================
Function AdmImagen(oMySQL, oWnd, oDlg, oImagen, cCodigo, nOption, lSimag )
local lOk, oMenu            //, nOption
local hBmp, cFile, lBmp, cRuta
LOCAL lJump := .t.
DEFAULT nOption := 0
DEFAULT lSimag  := .f.

cFile   := "TMP\bmpfile.xxx"

OpenClipboard( oWnd:hWnd )
IF GetClpData( 2 ) == 0
  lJump := .f.        //MSGINFO( "La Memoria de Copiado está Vacía...", "Error" )
ENDIF
CloseClipboard()

IF nOption = 0
 MENU oMenu POPUP 2007
   MENUITEM "Pegar Imagen" ;
      RESOURCE "PEGAR1" ACTION (nOption := 1, lSimag := .t.) WHEN lJump
   MENUITEM "Eliminar Imagen" ;
      RESOURCE "ELIMINAR1" ACTION (nOption := 2)
 ENDMENU
 ACTIVATE POPUP oMenu AT 85, 580 OF oDlg
EndIf

If nOption = 0
 Return(.f.)
EndIF

If nOption = 1
   IF lJump
     oImagen:LoadFromClipboard( oWnd )             // aquí cargamos la imagen al control del dlg
     oImagen:Refresh()
     FErase( cFile )
     oImagen:SaveImage( cFile, 2, [, nQuality] )
     lJump := GrabaImagen(oMySQL, cCodigo, cFile)     // aquí metes la imagen a una tabla
     If lJump
       FErase( cFile )
     EndIf
   EndIf
EndIf

If nOption = 2   // borrar imagen
   lJump := GrabaImagen(oMySQL, cCodigo, "")
   oImagen:SETBMP("NOIMAGEN")    // cambia la imagen en la visualizacion
   oImagen:Refresh()
EndIf

Return(lJump)

 

Re: imagen desde url

PostPosted: Wed Dec 03, 2014 10:06 pm
by mastintin
Primero de todo gracias por tu respuesta. :)
Entiendo que copias la imagen usando el ratón . Yo lo que pretendo es cargarla desde una dirección web directamente . Tengo este código :
Code: Select all  Expand view


function cogeimagen()
local cDir :=  "http://www.microsoft.com//h/en-us/r/ms_masthead_ltr.gif"
Try
      oHttp := CreateObject("winhttp.winhttprequest.5.1")
      oHttp:Open("GET", cDir, .f. )
      oHttp:Send()
      cResp := oHttp:ResponseText()
      memowrit("miImagen.txt",cResp )
   Catch
      MsgStop( "Error" )
      Return cResp
   End Try
return nil

 


En el archivo txt se graba en teoria el archivo pero ahora no se como recuperarlo teniendo en cuenta que no sabemos a priori el formato de imagen que es .

Por San Google veo una variante con bitmap gdi+ con : HResp := oHttp:ResponseStream() pero no consigo crear un bitmap desde stream .

Re: imagen desde url

PostPosted: Thu Dec 04, 2014 8:53 am
by Antonio Linares
Manuel,

Si en algo puedo ayudarte, aqui me tienes :-)