2013-12-22 59 views
0

因此我在VS 2013上配置了一個解決方案。我將OpenGL,GLEW和GLFW3鏈接起來。 當我點擊ctrl + f5構建/運行發佈版本時,它沒有錯誤,程序在構建後正確運行。程序在編譯後運行,但不是從Release/program.exe執行時

但是,之後當我嘗試使用在Release文件夾內創建的.exe文件手動執行程序時,它崩潰了。

任何人都有什麼線索可以解決問題?

+1

檢查根項目(或解決方案)文件夾。有沒有需要的DLL?或者你的程序在那裏加載了任何着色器? OMG! – chbaker0

回答

2

將您的DLL +發佈文件夾內的媒體(下箱)

+0

OMG!很明顯,但我看不到。那就是訣竅。謝謝你和所有其他的迴應。 –

1

該exe文件是否具有Release文件夾中所需的所有文件?從VS運行時使用的工作目錄和雙擊exe時使用的工作目錄可能不同。

1

MSVC內置的調試配置,當你不是.exe文件的實際位置開始你的軟件使用不同的工作目錄。

通常會將其配置爲使用項目的基本目錄。如果在運行時將與工作目錄相關的DLL和其他資源安裝在該目錄中,那麼這就是爲什麼它可以在調試器中正常運行,但不能在工作目錄爲「Release」時啓動它。

通常作爲構建過程的最後一步,將精心設計的項目配置爲將.exe移動/複製到比「發佈」部署更合理的位置。