OSG 有未经处理的异常: 0xC0000005: 读取位置 0xcdcdcdcd 时发生访问冲突

来源:互联网 发布:java反编译怎么用 编辑:程序博客网 时间:2024/04/28 13:48

         新手接触OSG,甚至可以说编程也是刚刚才开点窍,在做OSG开发时候,楼主为了省事,直接用了网上发布的realse版本。于是运行程序的时候弄的楼主泪流满面的,一个不清楚内核机制的新手在碰到 “有未经处理的异常: 0xC0000005: 读取位置 0xcdcdcdcd 时发生访问冲突”这样的问题的时候可想而知,不过楼主用很笨的方法去解决了这个问题,就是自己编译一下OSG,结果还真是解决了。

         另外新手可以按照楼主上一篇博客说的那样去编译,不过我第一次编译完了之后出现了很多类似 “无法解析的外部符号“ 其实这个问题就是说函数值找到了声明没找到定义,网上有很多这样的帖子,方法就是添加 lib文件,算了顺道做一遍好了。如下打开项目属性,点击链接器里面的输入:



        然后在附加依赖项里面输入需要的lib

另外在VC++目录里面的包含目录与库目录里面也要添加相应的库文件目录,上次在群里面谈论该问题的时候,有人说这个地方与前面不一致也会导致上面的问题,这里楼主不多做解释,因为不懂,不过也算给大家提供一个解决问题的出口吧。



          最后如果你也像楼主一样碰巧刚接触OSG的话,那么恭喜你,楼主在编译时候,CMAKE报了一堆错误,说什么找不到curl之类的,这个可以不管,楼主负责的告诉你继续编译就行了,因为最后照样可以用。另外这是 OSG大牛array的原话,对于一些第三方文件,是不会影响OSG核心库的。