我编译的 .dll 的 System.AccessViolationException

发布于 2024-09-09 06:54:22 字数 411 浏览 4 评论 0原文

我正在将一个项目编译为 .dll 并尝试在另一个项目中使用它。对于我在此库中使用的大多数函数,我都会收到 System.AccessViolationException 异常:

System.AccessViolationException:尝试读取或写入受保护的内存。这通常表明其他内存已损坏。 在 nglib.Ng_GetPoint(Void** , Int32 , Double* ) 在 ForwardModelingPlugin.CustomMeshVol3D.tesselate(CustomMeshVol3D* )

我使用的库称为 nglib - 开源网格器 netgen 的一部分。

我已经阅读了很多相关错误,但我不明白为什么会发生这种情况。我无法进入这个库,因为它不受管理,而我的项目的其余部分是受管理的。

谢谢

I am compiling a project into a .dll and trying to use it in another project. For most of the functions I use in this library, I get a System.AccessViolationException exception :

System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
at nglib.Ng_GetPoint(Void** , Int32 , Double* )
at ForwardModelingPlugin.CustomMeshVol3D.tesselate(CustomMeshVol3D* )

The lib I am using is called nglib - part of netgen, an open source mesher.

I have read a lot of related errors, but I don't understand why it is happening. And I cannot go into this library because it's unmanaged and the rest of my project is managed.

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

无名指的心愿 2024-09-16 06:54:22

AccessViolationException 意味着:

  1. 您正在使用的库中存在错误,或者
  2. 您正在向库传递无效参数。

AccessViolationException means either:

  1. There is a bug in the library you are using, or
  2. You are passing the library invalid arguments.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文