1

我正在尝试使用托管代码中的非托管代码

我想从非托管代码中提供以下功能

extern "C" __declspec( dllexport) HBITMAP *    DetectDocumentPatter(HBITMAP* b);  

现在代码的实现只返回相同的参数 b

我正在尝试从.net 端访问它

       1 Bitmap b = new Bitmap(@"C:\Projects\samples\9b.jpg");
       2 Rectangle rect = new Rectangle(0, 0, b.Width, b.Height);
       3 BitmapData bmpData = b.LockBits(rect, ImageLockMode.ReadWrite, b.PixelFormat);
       4 IntPtr p = wrapper.DetectDocumentPatter(bmpData.Scan0);
       5 Bitmap c = Bitmap.FromHbitmap(p);
       6 c.Save(@"C:\Projects\samples\unmanagedBitmap.jpg");

但是第 5 行代码通过通用错误发生在 GDI+

知道如何将 HBITMAP 编组为 .net 位图!我在这里搜索过,但内容确实具有误导性

4

0 回答 0