程序在构建后运行,但不是从Release / program.exe执行时运行

时间:2013-12-22 04:03:00

标签: opengl visual-studio-2013

所以我在VS 2013上配置了一个解决方案。我正在连接OpenGL,GLEW和GLFW3。 当我点击ctrl + f5来构建/运行发布版本时它没有错误,程序在构建后正确运行。

然而,之后当我尝试使用在Release文件夹中创建的.exe文件手动执行程序时,它会崩溃。

任何人都知道可能出现什么问题?

3 个答案:

答案 0 :(得分:2)

将您的DLL +媒体放在发行文件夹(在bin下)

答案 1 :(得分:1)

exe是否具有Release文件夹中所需的所有文件?从VS运行时使用的工作目录和双击exe时使用的工作目录可能不同。

答案 2 :(得分:1)

MSVC的内置调试器配置为在启动软件时使用与.exe文件的实际位置不同的工作目录。

通常将其配置为使用项目的基目录。如果您在运行时相对于工作目录加载的DLL和其他资源安装在该目录中,那么这就是它从调试器运行良好的原因,但是当您使用工作目录“Release”启动它时却没有。

通常作为构建过程的最后一步,精心设计的项目被配置为将.exe移动/复制到比“Release”更合理的位置以进行部署。