OpenPop.net从非托管代码调用(导致GPF)

时间:2017-05-12 19:42:31

标签: unmanaged

我想为我从非托管(C)代码调用的OpenPop创建一个C#managed x86 DLL包装器。

我过去使用NuGet" UnmanagedExports"为其他产品做过这个。包似乎运作良好。

我尝试使用OpenPop.net程序包执行此操作,但只要我调用" client = new Pop3Client();"我就会获得GPF。如果我删除所有对OpenPop的调用,DLL将加载并正确返回。

此外,我在try / catch结构中访问OpenPop但它仍然失败了GPF(而不是捕获此错误)。

我安装了最新的OpenPop.net软件包v2.0.6.1120,我的目标是.net v4.5.2(我也尝试过v4.0但没有区别)。

可以将OpenPop.net与UnmanagedExports包一起使用吗?如果是的话,有关我如何调试这个的任何建议吗?

谢谢!

(我知道这是免费软件,所以没有预料到支持,所以如果需要,我非常乐意支付费用)

1 个答案:

答案 0 :(得分:0)

我发现了问题...我没有将OpenPop.dll复制到我的DLL加载的应用程序文件夹中。文件可用后,GPF不再出现。太糟糕了,这不能被C#异常处理程序所困。