我正在使用SFML 2.0和Visual Studio 2010专业人员来创建游戏。当我在Visual Studio中测试我的游戏时,它运行得很好,加载了所有资源。找到所有资源都没有问题。但是,当我构建我的setup.exe文件并安装我的游戏时,部署的版本无法找到资源。
我觉得这与在Visual Studio中查找资源的位置相比,与在系统上安装资源的时间相比。在Visual Studio中,程序访问" res"包含项目文件的默认目录中的文件夹。显示here。
当我安装游戏时,我打包了#34; res"要安装在.exe like-so旁边的文件夹。
但是,当我运行已部署的游戏时,它找不到任何资源,因此崩溃了。我觉得这是一个真正简单的修复,只是我放置了" res"文件夹在不同的位置,但我已经搞乱了一段时间,无法让它工作。我在哪里放置" res"安装程序中的文件夹?
答案 0 :(得分:1)
鉴于您没有提供任何代码,我假设您正在使用相对路径加载资源。这意味着您的应用程序将查找相对于工作目录的文件。现在可以更改工作目录,Visual Studio会这样做并将其设置为项目文件所在的位置(默认情况下)。当您现在通过双击它来运行应用程序时,工作目录就是应用程序本身所在的位置。因此,您的设置应该有效。
但是,如果您有一个连接或从设置中启动应用程序,则需要确保正确设置工作目录。
此外,您还可以更改应用程序中的工作目录,但这需要一些特定于平台的代码(或者使用Boost的文件系统)。