C#调用DLL(C++)缺失导出函数

正在折腾Directshow轮子. 不过已经是第二次编写相关的DLL.

正想用C#调试一下DLL.结果报: 试图加载格式不正确的程序 

这里已经准确设定了目标平台. (C# 试图加载格式不正确的程序)

所以, DLL编译出来终究还是得用工具测一测, 然而Depends walker却因DLL结构复杂莫名假死.

返璞归真用dumpbin /exports xx.dll. 结果吃了一鲸:
图1

我写的函数去哪了?

往着这点出发, 回看了一下项目的导出函数只放在了.h头文件中, 相应的cpp文件因为强迫症被移除. 从编译的原理来看, 或许这就是问题所在. 于是创建回.cpp文件. 一定别忘了把.h文件给包含起来啦.

2

重新生成一下, dumpbin测试终于正常. C#调试也正常

发布了3 篇原创文章 · 获赞 2 · 访问量 307

猜你喜欢

转载自blog.csdn.net/aldfaaa/article/details/99648719