C#到Native interop的故障排除步骤/工具有哪些?

时间:2009-06-11 17:47:39

标签: c# interop native

我有一个主要用C#编写的SDK。我们有一些本机代码是出于安全性和性能原因而编写的。我们使用DllImport与本机代码互操作。有一些函数我收到“Unable to find an entry point named '...' in DLL '...'.":"”错误。我已经验证了导出的找不到的功能。我已经确认它没有错误的名称。我已经验证参数排队了。我在DllImport属性中尝试了几种不同的调用约定。我想我可以继续尝试这种方式,但我希望有更直接的方法。

有没有人知道在这种情况下获取更多信息的工具或方法? dll的定位我有多自信?如果参数错误,我会得到这个例外吗?任何帮助将不胜感激。

Pat O

3 个答案:

答案 0 :(得分:1)

如果这在“完整框架”中有效,则不行,但您可以尝试:

http://blogs.msdn.com/stevenpr/archive/2005/06/22/431612.aspx

答案 1 :(得分:0)

我使用Dependency Walker在C ++ DLL中查找导出的函数。这有助于确保您尝试导入正确的名称等。

答案 2 :(得分:0)

我使用dumpbin获取导出列表...

祝你好运!