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

来源:互联网 发布:adobe 软件 ico图标 编辑:程序博客网 时间:2024/06/05 06:14

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中也一样, 指定一下绝对目录就可以了.

 

大功造成,  可以运行了.