解决方案下面有多个项目,
有一个启动项目,这个项目用到了其它项目的库文件,这个库文件之前生成的,正常是对这个主项目进行生成操作。
遇到的问题:编译成功了,但是通过cmd运行 exe文件是,弹出对话框 : 应用程序无法正常启动(0xc000007b)。请单击确定关闭应用程序
网上查, 应该是64位的执行文件调用的64位的库,32位的执行文件调用32位的库。 有可能是调用库的位数不一致。
不经意,通过快捷键ctrl+shift+B 对整个解决方案进行了重新生成,但是其中一个项目的配置选项中 输出类型由原来的 .lib库改成了dll,
解决方案是:将该项目的输出类型改成从dll类型改回到 lib类型,
与dll输出相关的代码:
该项目中的commod.h 头文件的 预编译头,注释了 将api 导入导出 成dll
#ifdef DNN_EXPORTS
#define DNN_API //__declspec(dllexport)
#else
#define DNN_API //__declspec(dllimport)
#endif
#define CNN_HANDLE void*