2014-01-06 38 views
0

我正在一個ConsoleApplication文件在2010年VS,我有方法,其刪除從磁盤上的文件下方在Windows 7卸下在C++

bool DeleteRelFile(char * file) 
{ 
    if (remove(file) == 0) 
     return true; 
    else 
     return false; 
} 

現在問題我面臨的代碼被給定是當我在調試模式下運行項目並將文件路徑傳遞給上述方法時,文件被成功刪除,但是當我從命令提示符運行該exe時,通過該方法傳遞的文件不會被刪除。你的幫助,將不勝感激

+0

你能告訴我們整個代碼是怎麼樣的嗎? – meWantToLearn

+0

聽起來像權限的東西,嘗試運行.exe作爲admministrator。 – Netwave

+1

那麼,真的,檢查你得到的錯誤怎麼樣,如果有的話......閱讀文檔*刪除*開始。 – hyde

回答

0

問題是文件的路徑。如果您只是傳遞文件名稱,它將不起作用,因爲它期望文件位於當前目錄中(您從中運行代碼的位置); 您可以傳遞一個像c:\ input.txt這樣的絕對路徑來查看它是否可以正常工作,然後找出正確的相對路徑。

希望這會有所幫助。

+0

我懷疑這是路徑問題,最後你的啓動目錄在通過MSVC和運行exe進行調試時是一樣的。 –

+0

@Digital_Reality除非他在Debug或Release目錄中運行它。 – Proxy