Red de conocimiento informático - Problemas con los teléfonos móviles - imagen vb cargando archivo binario

imagen vb cargando archivo binario

Los siguientes módulos de procesamiento se pueden utilizar para realizar pruebas. Agregue la declaración de API usted mismo

Función pública PictureFromByteStream(b() As Byte) As IPicture

Dim LowerBound As Long

Dim ByteCount As Long

Atenuar hMem As Long

Atenuar lpMem As Long

Dim IID_IPicture(15)

Atenuar istm Como stdole.GoTo Err_Init

If UBound(b, 1) lt 0 Then

Salir de la función

End If

LowerBound = LBound(b)

ByteCount = (UBound(b) - LowerBound) 1

hMem = GlobalAlloc(amp.H2, ByteCount H2, ByteCount)

Si hMem lt ;gt; 0 Entonces

lpMem = GlobalLock(hMem)

Si lpMem lt; 0 Entonces

MoveMemory ByVal lpMem, b( LowerBound), ByteCount

Llamar a GlobalUnlock(hMem)

Si CreateStreamOnHGlobal(hMem, 1, istm ) = 0 entonces

Si CLSIDFromString(StrPtr("{7BF80980 -BF32-101A -8BBB-00AA00300CAB}"), luego

Llamar a OleLoadPicture(ByVal ObjPtr(istm), ByteCount, 0, IID_IPicture(0), PictureFromByteStream)

Finalizar si

Finalizar si

Finalizar si

Finalizar si

Salir de la función

Err_Init:

Si Err. Número = 9 Entonces

'Matriz no inicializada

MsgBox "¡Debe pasar una matriz de bytes no vacía a esta función!"

De lo contrario

MsgBox Err.number amp; " - " amp Err.description

Fin si

Función final