Hola Alejandro,
¿como gestionas el mostrarla?
Si la cargas usando un blob, el tamaño máximo de bloque es de 32765 bytes, que imagino es lo que te pasa, para ello, maneja bloques de este tamaño, te pongo un ejemplo:
---------------------------------------------------------------------------------------------
Blob lblb_blob_parcial
Blob lblb_blob_total
Long ll_longitud
Integer li_bytes_leidos
Integer li_fichero
Integer li_i
Integer li_j
Pointer OldPointer
//Reloj de arena
OldPointer = Setpointer(Hourglass!)
//y se desactiva que se redibuje para no ver saltos
p_1.SetRedraw(FALSE)
//longitud del fichero a cargar
ll_longitud = FileLength("c:\ruta_donde_está_la_imagen\nombre_de_la_imagen.bmp") //podría ser también jpg.
//Si el tamaño supera los 32765 bytes
// Abrá que acumular tantas veces
// como el número de bytes que tenga la imagen entre 32765
If ll_longitud > 32765 Then
If Mod(longitud, 32765) = 0 Then
li_j = ll_longitud / 32765
Else
li_j = ( ll_longitud / 32765 ) + 1
End If
Else
li_j = 1
End If
//Se abre el fichero para leerlo.
li_fichero = FileOpen("c:\windows\estadio1g.bmp", StreamMode!, Read!, LockRead!)
//Se recoge la imagen en un blob
For li_i To li_j
li_bytes_leidos = FileRead( li_fichero, lblb_blob_parcial )
lblb_blob_total = lblb_blob_total + lblb_blob_parcial
Next
//Cerramos el fichero
FileClose( li_fichero )
//Pintamos la imagen, permitimos redibujar y reestablecemos el puntero del ratón
p_1.SetPicture(lblb_blob_total)
p_1.SetRedraw( True )
SetPointer( oldPointer )
---------------------------------------------------------------------------------------------
Espero te sirva,
saludos.