zhucde (虚拟闲人) 的博客

OGRE,FLY3D, 图形开发, 一起探讨吧.QQ超级群(500人):186898914 QQ群(200人):23806843
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Ogre控件在网页中调用的问题

Posted on 2011-01-09 14:00  zhucde  阅读(724)  评论(2编辑  收藏  举报

Ogre做成控件我就不说了, 不复杂, 按控件的做就可以了,  原来做是为了给别的程序调用,  没有什么问题,

昨天需要让它在浏览器中调用,  麻烦就来了,  这里分享一下, 让新TX很快就避免走同样的老路.

 

在IE中调用主要就是路径的问题,

Ogre默认初始化时, 调用的Plugins.cfg, Ogre.cfg, Ogre.log, resources.cfg 的路径都是在程序所在的当前目录中调用的,

而一旦通过浏览器来调用,  拿IE来举例吧,  开始我以为它会首先查找IE浏览器程序所有的目录,  即C:\Program Files\Internet Explorer,

后来测试发现, 它并不是从这个目录中去查找这些配置文件的,  而是从当前目录下,  很奇怪,  我打印出当前目录, 竟然是: C:\Documents and Settings\Administrator\桌面  (当前目录可能由于各种程序的操作而改变)

所以, 它在桌面上创建了ogre.log, 而Plugins.cfg, ogre.cfg, resources.cfg都找不到, 所以挂掉了.

说到这里其实是费话, 只为了表明一个问题, 就是路径的问题,  解决方法很简单

在调用这四个文件时,  指定一个绝对路径, 如:

mRoot= new Root("C:\test\Plugins.cfg","C:\test\ogre.cfg","c:\test\ogre.log");

资源配置文件调用也一样, 使用绝对路径

当然, 我是先查询了一个控件所在的目录, 然后在控件所在的目录来查找, 上面的路径只是举个例子.

第一步解决了, 配置文件的路径都正确了, 程序可以继续下去了,  下面就是这些配置文件中, 指定的插件和资源的路径,

同样要修改, 改成绝对路径:

比如Plugins.cfg中, 

PluginFolder=D:/AcitivexTest   //改成实际的插件所在的目录

Resource.cfg中也一样, 指定一下绝对目录就可以了.

大功造成,  可以运行了.

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/zhucde/archive/2011/01/09/6125090.aspx