您好我已经创建了一个C ++ DLL,我将其导入C#应用程序以重用函数。
C ++中的函数代码是static bool IsSomethingAttached(char *Arg1[])
当我在C#程序中使用如下的DllImport时, [的DllImport( “DLLNAME”)] 我得到错误为EntryPointNotFound异常。
我用过
**DumpBin /symbols Dllname.dll**
获取受损的名称。
1)但我不知道如何准确地获得受损的名字。很少有帖子说我们应该使用/ exports但是/exports
而不是/symbols
只是给出摘要而我没有被破坏的名字。 Pl帮助
2)如何使用 undname.exe 从未修饰的名称中获取装饰名称?
答案 0 :(得分:1)
使用,
/ALL
显示除代码反汇编之外的所有可用信息。使用/ DISASM选项显示反汇编。您可以将/RAWDATA:NONE
与/ALL
选项一起使用,以省略文件的原始二进制详细信息。
由于/ALL
选项只是所有其他选项的组合,因此不需要示例。
您可以在C ++中使用exports
和.def
文件来获取c#中未修饰的名称。这里不需要dumpBin