Z ztszts Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-13 #1 在VB中将一个PictureBox的hWnd传递给一个DLL,DLL返回一个图像到PictureBox<br>我在delphi中使用的是TImage,传递的是Image1.Picture.Bitmap.Handle,结果出现异常<br>请问我在DELPHI中应该传递什么参数,用那个控件比较好
在VB中将一个PictureBox的hWnd传递给一个DLL,DLL返回一个图像到PictureBox<br>我在delphi中使用的是TImage,传递的是Image1.Picture.Bitmap.Handle,结果出现异常<br>请问我在DELPHI中应该传递什么参数,用那个控件比较好
Z ztszts Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-13 #3 VB中的声明:<br>Public Declare Function GetImage Lib "DataLib" (ByVal hDispWnd As Long) As Long<br>VB中的调用,pic1是一个PictureBox控件:<br>dwRet = GetImage(pic1.hWnd)<br>--------<br>上面执行完之后,窗体的pic就显示一个dll写入的图片,我要把代码改到delphi里<br>我是这样做的:<br>声明:<br>var<br> GetImage:function(hDispWnd: HWND): DLLEXPORT {$IFDEF WIN32} stdcall {$ENDIF};<br>调用,Image1是一个TImage:<br> dwRet:=GetImage(Image1.Picture.Bitmap.Handle);<br>在delphi里执行报异常
VB中的声明:<br>Public Declare Function GetImage Lib "DataLib" (ByVal hDispWnd As Long) As Long<br>VB中的调用,pic1是一个PictureBox控件:<br>dwRet = GetImage(pic1.hWnd)<br>--------<br>上面执行完之后,窗体的pic就显示一个dll写入的图片,我要把代码改到delphi里<br>我是这样做的:<br>声明:<br>var<br> GetImage:function(hDispWnd: HWND): DLLEXPORT {$IFDEF WIN32} stdcall {$ENDIF};<br>调用,Image1是一个TImage:<br> dwRet:=GetImage(Image1.Picture.Bitmap.Handle);<br>在delphi里执行报异常
暗 暗夜中独舞 Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-13 #4 我试了一下 Image1.Picture.Bitmap.Handle取出来的值是0啊!!
暗 暗夜中独舞 Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-13 #5 用GetDC(Image1.Picture.Bitmap.Handle)这样试一下
暗 暗夜中独舞 Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-13 #6 Image1.Picture.Bitmap.Canvas.Handle;<br>这样也取的出
Z ztszts Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-13 #7 谢谢,我用GetDC(Image1.Picture.Bitmap.Handle)这个试了也不行<br>0是它的初始值,我调用的那个DLL会向这个句柄里写入一个图片,vb里我看了效果没有问题<br>Image1.Picture.Bitmap.Canvas.Handle;这个也不行
谢谢,我用GetDC(Image1.Picture.Bitmap.Handle)这个试了也不行<br>0是它的初始值,我调用的那个DLL会向这个句柄里写入一个图片,vb里我看了效果没有问题<br>Image1.Picture.Bitmap.Canvas.Handle;这个也不行
暗 暗夜中独舞 Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-13 #8 我已经在Image1里先存了一张图片啦 但是handle还是0<br>是0说明根本没有取到呀
Z ztszts Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-13 #9 不是啊,我在Image1里存了一张图片,handle不是0的,你再看看
暗 暗夜中独舞 Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-13 #10 我知道怎么会事了 <br>存张jpg的图片handle就是0<br>存bmp的图片就可以取的到
暗 暗夜中独舞 Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-13 #11 GetImage的函数功能是什么?<br>你出现的异常是什么样的??
I iamduo Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-13 #12 JPEG是不可以用Handle的。<br>所以要先将TJpeg的图片变成BMP,然后传递BMP。<br>肯定可以。(因为我就是这样做的)