2015-08-29 117 views
1

我試圖讓別人的VC++項目在VC8中工作。該解決方案包含一個庫和一個可執行文件。每個項目都位於解決方案下一級的自己的目錄中。編譯代碼時,可執行文件將放置在解決方案文件夾下的調試文件夾中,而不是位於programdir \ debug文件夾中。VC++命令行參數被忽略

這裏的佈局:

solutiondir\solution.sln 
solutiondir\libdir\library.proj (and .cpp and .h files) 
solutiondir\programdir\program.proj (and main.cpp) 
solutiondir\debug\library.lib 
solutiondir\debug\program.exe 

一切都建立很好,但是當我嘗試運行的Program.exe,還有的是,我試圖調試一個問題。當我第一次嘗試在調試模式下運行program.exe時,它問我exe文件位於何處,因此我瀏覽了debug目錄(solutiondir \ debug),然後調試器就能夠運行program.exe。到現在爲止還挺好。

問題是我無法越過「使用」功能,因爲命令行參數沒有被拾取。我編輯了程序的屬性,其中有明確的參數,但argc == 1,唯一的參數是程序名,清楚地表明「Command Arguments」被忽略或未找到。

我在想這個問題是否與目錄結構有關,或者是否有像$(target)這樣需要設置的變量,儘管我已經嘗試過設置。我錯過了什麼嗎?任何幫助表示讚賞。

+0

是否將構建program.exe的項目設置爲默認項目?這是它開始調試時運行的那個。如果一個DLL是默認的,它會詢問可執行文件。 – 1201ProgramAlarm

+0

我在這種情況下的建議是從零開始重新創建項目。不要依賴Visual Studio的項目自動轉換。 – john

+0

我不確定你的意思是「程序的屬性」,但是在VS2013中(抱歉,沒有VC8),調試的程序參數在屬性/配置屬性/調試/命令參數中設置。並且不要忘記爲調試配置設置這些。 – john

回答

1

將構建程序可執行文件的項目設置爲默認項目,這將在您開始調試時運行。