今天 将之前写好的模块与imgui整合在一起,之前单元测试是没问题的,但是一整合代码就会报出0xc000007b的错误,如上图所示,刚开始以为中病毒了,后来排查发现源码是没问题的,后来通过比较发现之前单元测试用到的一个freeglut.dll,大小是230kb,而我集成在项目中的dll大小只有194kb,之后换成单元测试使用的dll就不会报错了,可能跟这个dll版本有关系。后来发现版本都是一样的,最后利用工具将两个dll做对比,如下图所示
左侧部分为正确dll的内存分布信息,右侧部分为不正确的dll内存分布信息,发现不正确的内存分布少了.pdata字段,很可能跟这个有关系。