这两个东西在一起问题真呀么多......前些日子才写的一个注意事项的随笔,这回又有问题需要记录,好吧,开新文写。
问题:由于项目的复杂度,问题的表现与原因其实相差十万八千里。
原因:MFC在打开和保持文件后(即打开CFileDialog对话框后),就会修改进程的当前目录,就是SetCurrentDirectoy(),导致OGRE里那些用相对路径做Location的资源目录下的文件全部无法读取(其实我觉得OGRE应该把这些相对目录在读取文件的时候换成绝对目录)。具体就是openResource()中调用stat()出错,文件系统中找不到指定文件。
解决方法:在合适的地方调用SetCurrentDirectoy()把进程当前目录设置回进程工作目录吧......
于是又是一下午+半个晚上的调试时间......