请问知道在内存中一个图片的指针IntPtr,如何把这个图片显示在ImageBox里面呢?
下面是现实在在PicForm中的方法,我希望显示在ImageBox里,应该如何实现呢,请指教
IntPtr img = (IntPtr) pics[ i ];
PicForm newpic = new PicForm( img );
newpic.MdiParent = this;
int picnum = i + 1;
newpic.Text = "ScanPass" + picnumber.ToString() + "_Pic" + picnum.ToString();
newpic.Show();

解决方案 »

  1.   

    Image _Image = Image.FromHbitmap(img );  看能行不 ?
      

  2.   

    先谢谢兄弟了,不行啊,一运行到这句就出错了,Image myImage = Image.FromHbitmap(img); 可能因为图像是通过扫描仪扫描进来的,并不是一个bitmap图片
      

  3.   

    先调用
    HICON ImageList_GetIcon(
        HIMAGELIST himl,
        int i,
        UINT flags
    );再用
    public static Bitmap FromHicon(
    IntPtr hicon
    )
      

  4.   



    你在C#中用指针,找死呀!!!哈哈
    用VC++或Delphi,让你用爽指针

      

  5.   

    你知道图像的指针,如果知道图像大小,就可以用byte[] data = new byte[picLength];
    Marshal.Copy(img, data, 0, data.length);
    using(MemoryStream ms = new MemoryStream(data))
    {
      imgbox = Image.FromSteam(ms);
    }