我正在写一个dll,它会在一个叫做
的电话中收到一个图片框**Declare Sub ERPInitialize Lib "C:\Desenv\EBioNet\EBioNet\Debug\ERPDll.dll" (ByVal PicHandle As Long)**
以这种方式调用它:
**Call ERPInitialize(PictureBox1.Handle)**
我想存储这个句柄并从存储的句柄中取回PictureBox1的托管指针,以便我可以在其上绘制图像。
有任何线索吗? 提前致谢
如果我在调用ERPInitialize中传递PictureBox ^我无法存储它,以后用作全局,因为CLR中不允许使用托管指针。
我试过
PictureBox ^_pbPic;
IntPtr Ptr_Picturebox = (IntPtr)PictureHWD;
GCHandle handle2 = (GCHandle)Ptr_Picturebox;
_pbPic = (PictureBox ^ )(handle2.Target);
但它会导致异常0xc0000005。