2014-09-19 44 views
0

當我構建時,它成功沒有錯誤。但是,當我從IDE運行時,出現錯誤(我的映像無法加載,因爲找不到目錄)。從IDE運行程序時無法找到圖像目錄,但從文件夾運行時可以運行CAN程序?

但是,如果我進入文件夾並運行程序(.exe),它會完美地找到圖像目錄。

mTextures.Load(Textures::Background, "../GFX/Background.png"); 

^給出目錄的代碼行。

我認爲這是一個設置問題,我沒有在我的編譯器中正確輸入?

我在Windows上使用Code :: Blocks。

回答

0

你的調試器的當前目錄(即當您執行從代碼塊中的應用程序使用的當前目錄)可能不正確。檢查您的項目設置,並將當前目錄修復到您的目標目錄(包含可執行文件本身的目錄)。

具體說明是here

+0

謝謝你理解我的問題並給我正確的答案。 – user50286 2014-09-20 01:55:28

+0

完美的作品! Thx再次。 – user50286 2014-09-20 06:14:23

0

這是因爲你在你的文件名使用相對路徑:

"../GFX/Background.png" 

..是說「上一個目錄形成當前目錄」。如果您希望能夠在任何地方運行程序,使用絕對路徑是這樣的:

"/home/me/GFX/Background.png" 
+0

我試過這個,但即使在將GFX文件夾放入ide文件夾中的.exe文件夾後也遇到同樣的問題。 – user50286 2014-09-20 01:49:40

0

使用雙斜槓添加圖像存在的完整路徑。

mTextures.Load(Textures::Background, "C:\\Program Files\\..\\..\\GFX\\Background.png"); 
+0

我確定這是有效的,但有一個原因,我想使用相對路徑。 – user50286 2014-09-20 01:53:08

相關問題