对OCX或DLL进行DEPENDS walker图标说明

     以前用DEPENDS walker对OCX或DLL进行依赖遍历,如果出现浅黄色惊叹号,代表缺失这个DLL。这次进行支持工作,发现出现浅红色的图标,选中相应红色图标展开后发现依赖的函数明显不是所依赖库应该提供的。


    出现这种错误很迷茫,不知道发生了什么。问题是,编译都能过,为什么还出现这个问题呢?用VS2010自带的dumpbin程序进行 exports 输出依赖文件,也直接显示import address table就是错误的。


    研究了一天半时间,做了各种尝试,将问题界定在链接的时间出现的问题,需要关注下编译中出现的告警。遂将VS2010在编译过程中出现的日志信息打到详细级别,最终修订了/SAFESEH:NO 和/OPT:NOREF就解决了问题。


   此问题估计是ffmpeg的lib不能够被裁减造成或与使用的其它库冲突造成的。以后有时间再深入分析解决吧,过一关算一关。


   现在已过了什么问题都想穷根问底的年龄,有时间可以投入更有价值的事情。。。。。


   不过, 问题的最终解决,时间的持续投入和已有经验的积累,缺一不可,相辅相成。高效程序员的自我修炼

你可能感兴趣的:(c&c++技术)