2012-04-04 175 views
1

因此,程序編譯正常,並且在$(SolutionDir)/ Debug中生成可執行文件。當我從調試文件夾本身運行可執行文件時,程序會成功掃描放置在dubug目錄中的文件夾中的文件。但是,當我從Visual Studio執行程序時,程序將失敗,除非我將該目錄的全局路徑輸入到FindFirstFile函數。爲什麼?使用Visual C++ 2010啓動程序時,無法指定相對路徑

例如:我必須這樣做才能從Visual Studio調試程序:

#ifdef _DEBUG 
#define FILEPATH L"C:/Users/Steven/Documents/Visual Studio 2010/Projects/$(SolutionDir)/Debug/Effects/*.dll" 
#else 
#define FILEPATH L"Effects/*.dll" 
#endif 

回答

1

可能是因爲當你的應用程序在調試器下運行,工作目錄是不是項目的目錄,而是調試器的目錄(或其他任何不包含您的DLL文件的任意目錄)。

通過打開項目的屬性並檢查調試設置來檢查(並修復)這個問題。具體而言,屬性→配置屬性→調試。 「工作目錄」設置應設置爲$(TargetDir)

+0

好的。該值設置爲$(ProjectDir) – 2012-04-05 05:56:51

相關問題