Dim p As New StdPicture
form:Dim b() As Byte
Private Sub Command1_Click()
    Set p = LoadPicture("C:\WINNT\Coffee Bean.bmp")
    b = PictureToBytes(p)
    
End SubPrivate Sub Command2_Click()
    Image1.Picture = BytesToPicture(b())
End Sub
----------------------------
Module:Option Explicit' *** Den Artikel zu diesem Modul finden Sie unter http://www.aboutvb.de/khw/artikel/khwpicturetobytes.htm ***Public Function PictureToBytes(Picture As StdPicture, Optional Key As String = "Bild") As Byte()
        
    With New PropertyBag
        .WriteProperty Key, Picture
        PictureToBytes = .Contents
    End With
End FunctionPublic Function BytesToPicture(Bytes() As Byte, Optional Key As String = "Bild") As StdPicture
    With New PropertyBag
        .Contents = Bytes
        Set BytesToPicture = .ReadProperty(Key)
    End With
End FunctionPublic Function PictureCollectionToBytes(Collection As Collection, Optional CountKey As String = "Anzahl", Optional PicKey As String = "Bild") As Byte()
    Dim l As Long
    
    With New PropertyBag
        .WriteProperty CountKey, Collection.Count, 0
        For l = 1 To Collection.Count
            .WriteProperty PicKey & l, Collection(l)
        Next 'l
        PictureCollectionToBytes = .Contents
    End With
End FunctionPublic Function BytesToPictureCollection(Bytes() As Byte, Optional CountKey As String = "Anzahl", Optional PicKey As String = "Bild") As Collection
    Dim l As Long
    Dim nCollection As Collection
    
    Set nCollection = New Collection
    With New PropertyBag
        .Contents = Bytes
        For l = 1 To .ReadProperty(CountKey, 0)
            nCollection.Add .ReadProperty(PicKey & l)
        Next 'l
    End With
    Set BytesToPictureCollection = nCollection
End Function

解决方案 »

  1.   

    定义byte数组:
    Dim image_data() As Byte
    保存图片:
    sub savePic()
       Open "e:\1.bmp" For Binary As #1
       ReDim image_data(LOF(1) - 1)
       Get #1, , image_data()
       Close #1
    end sub
    显示图片:
    sub displayPic()
       Open "e:\temp.bmp" For Binary As #1
       Put #1, , image_data()
       Close #1
       img2.Picture = LoadPicture("e:\temp.bmp")
       Kill "e:\kyp.bmp"    '适当的时候删掉建立的临时文件
    end sub
      

  2.   

    忘了看你的要求,保存成文件就不要删了。(img2是图片显示控件)
      

  3.   

    kangyp(小猪笨笨)  ,謝謝,但我提問題時已試過你的這個方法,但不行
    另解釋:
     LibXCapture1 是一指紋控件,只有在LibXCapture1里能取到指紋并成圖后才能LibXCapture1..GetImageData(BufferBmp),但LibXCapture1..GetImageData(BufferBmp)成功,BufferBmp約為27KB左右的Byte數組
      

  4.   

    看它的文件格式
    http://www.csdn.net/Dev/Format/#图形文件