查看: 3010|回复: 14

请问MFC中图形上下文的问题

[复制链接]

该用户从未签到

发表于 2008-9-1 15:30:46 | 显示全部楼层 |阅读模式
请版主帮忙解决一个问题:
我在MFC中显示图形时,在创建图形上下文变量时总是出现问题。编译时可以通过,但当程序运行到创建图形上下文变量时就走不动了。语句是:
osg::GraphicsContext *gc=osg::GraphicsContext::creatContext(traits.get());
我用的是和例子ExampleosgviewerMFC中相同的处理代码,怎么都查不出什么问题来。请版主帮忙看看!
不胜感激!

该用户从未签到

发表于 2008-9-1 17:20:30 | 显示全部楼层
试试这个,打开.sln后运行里面的test18工程

MFC_OSG_MDI.rar

111.79 KB, 下载次数: 143, 下载积分: 威望 1

该用户从未签到

 楼主| 发表于 2008-9-1 21:28:59 | 显示全部楼层
好的
我下下来试试
谢谢

该用户从未签到

发表于 2008-9-2 01:17:22 | 显示全部楼层
可能是你的窗口句柄没有得到,,初始化失败的,,,你调调看看~~~~~~

该用户从未签到

 楼主| 发表于 2008-9-2 19:09:28 | 显示全部楼层
我昨天晚上对二楼的程序运行了一下
其中的OSG_MFC_MDI运行没有问题
test18还是有那个问题
就是变量gc无法分配内存

该用户从未签到

 楼主| 发表于 2008-9-2 19:11:33 | 显示全部楼层
看两个工程基本都一样的
不知道问题在那里

该用户从未签到

 楼主| 发表于 2008-9-2 19:15:48 | 显示全部楼层

回复 4楼 的帖子

在前面的每一步的调试中都没有发现问题
而且我把与源代码中的osgviewerMFC中的例子都对照了一遍,也没有发现什么问题
会不会是配置的问题?

该用户从未签到

发表于 2008-9-2 20:14:19 | 显示全部楼层
原帖由 yuanyulei 于 2008-9-2 19:15 发表
在前面的每一步的调试中都没有发现问题
而且我把与源代码中的osgviewerMFC中的例子都对照了一遍,也没有发现什么问题
会不会是配置的问题?


也可以发工程压缩包到论坛上,大家帮您查看一下可能是什么问题。单凭这么一点信息不容易确定您的问题所在

该用户从未签到

发表于 2008-9-3 00:29:34 | 显示全部楼层
回复 4楼 的帖子
在前面的每一步的调试中都没有发现问题
而且我把与源代码中的osgviewerMFC中的例子都对照了一遍,也没有发现什么问题
会不会是配置的问题?

看来这个就比较郁闷了,,,,至于具体错误真得调调这个代码了~~~~~~~

该用户从未签到

发表于 2008-9-3 09:08:24 | 显示全部楼层
就是我发的那个东西吧,我查几天也都没查出问题~

该用户从未签到

发表于 2008-9-3 09:15:49 | 显示全部楼层
原帖由 array 于 2008-9-2 20:14 发表


也可以发工程压缩包到论坛上,大家帮您查看一下可能是什么问题。单凭这么一点信息不容易确定您的问题所在

工程压缩包,里面test18是获取不了上下文的。

MFC_OSG_MDI.rar

111.79 KB, 下载次数: 112, 下载积分: 威望 1

该用户从未签到

发表于 2008-9-3 10:47:51 | 显示全部楼层
这个工程在我这里可以正常运行,不过因为我没有编译Debug版的库文件,所以所有的OSG依赖库都采用Release的版本,即osg.lib,osgViewer.lib等,您可以尝试编译Release版本看一看还有没有类似问题。

我看到您的链接库设置是这样的:
osgd.lib
osgViewer.lib
osgGAd.lib
osgDBd.lib
osgUtild.lib
个人经验是,如果把Debug版的依赖库和Release版的混用,可能会产生各种无法预期的问题

该用户从未签到

发表于 2008-9-3 12:00:06 | 显示全部楼层
果然是lib的问题,把osgViewer.lib改成osgViewerd.lib就可以了,谢谢版主了~~~

该用户从未签到

 楼主| 发表于 2008-9-4 10:28:30 | 显示全部楼层
我也回去试试

该用户从未签到

 楼主| 发表于 2008-9-4 10:28:53 | 显示全部楼层
谢谢斑竹
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表