.Net 调用C++在 Windows 10 中间歇性地工作

.Net calling C++ intermittently working in Windows 10

本文关键字:工作 中间 调用 C++ Windows Net      更新时间:2023-10-16

我们有C++DLL编译,2010由CSharp .net 4.0中的应用程序调用。C++输出三个 IntPtr,然后使用 Bitmap.FromHbitmap 转换为位图。在Windows 7中一切正常。我们已经升级到Windows 10。现在,间歇性地,在 CSharp 代码中捕获了一个 SEH 异常。有没有人遇到过类似的问题或有任何建议?如果您想发布代码,请告诉我。谢谢<</p>

div class="answers">

尝试在 Windows 10 环境中重新编译 C++ DLL,然后重试。

我的同事能够识别出问题。这是代码中的指针C++问题。以下是他的评论:ImageToResize需要作为参考,因为它在这里重新分配。 这段代码以前运行的唯一原因似乎是由于 cvReleaseImage() 后跟 cvCreateImage() 碰巧重用了相同的内存(大多数时候),所以没有任何东西"移动"。参数已从:*ImageToResize 更改为 *&ImageToResize。因此,这可能是Windows 7和Windows 10之间不同内存分配样式的标志。我希望这对将来的某人有所帮助。