Tengo un código que te puede ayudar:
-Agrega un objeto OLE, llamado OLE al formulario.
-Anexa este código al evento click de un botón
-Necesitas vfpimage. Fll
[procedure Boton1.click()]
Local Lruta, Lborrar
Lborrar = .F.
Lruta = Getpict('bmp,jpg,jpeg,png')
If Empty(Lruta)
Return
Endif
If File(Lruta)
Old = Alias()
Wait Window Nowait "Guardando la información del logo..."
Select Vlogo
Lborrar = .T.
Lrutadest = Addbs(Sys(2023))+"imgtemp.bmp"
Set Library To vfpimage.fll Additive
Lruta = "'"+Lruta+"'"
Cargoimagen=Imgload(&Lruta)
If Cargoimagen=0
Wait Window Nowait "Error cargando la imagen, por favor seleccione otra con el formato adecuado"
Return
Endif
Aaa = Imgconvert(Lrutadest, 1, 75)
Append General Logo From &Lrutadest
= Tableupdate(.T., .T., "vlogo")
thisform.Ole.Controlsource = "vlogo.logo"
thisform.Ole.Refresh
Wait Window Nowait Timeout 3 "Se ha guardado la información"
If Lborrar
Erase &Lrutadest
Endif
Select (Old)
Else
= Messagebox("El archivo "+Lruta+" no es válido.", 16, Business_loc)
Endif
*** Fin de codigo