2011-01-05 40 views
4

我在我的項目之一,這個錯誤似乎不出來其中:無法寫入輸出文件特定路徑/文件名太長?

Cannot write to the output file "obj\Debug 
\WindowsFormsApplication1.Properties.Resources.resources". 

The specified path, file name, or both are too long. 
The fully qualified file name must be less than 260 characters, 
and the directory name must be less than 248 characters. 

我該如何解決這個問題?

+1

那個目錄的絕對路徑是什麼? – Heinzi 2011-01-05 15:49:44

+2

這幾乎可以肯定是你的文件路徑的深度,移動你的項目文件夾更接近驅動器的根目錄。 – Lazarus 2011-01-05 15:49:51

回答

6

使用較短的路徑,Win32不支持比這更長的路徑。較短的目錄名稱或不太深的嵌套層次結構可能會有所幫助。工程文件所在的路徑已經很長了,所以當它試圖在debug子目錄中生成一個文件時,超過了路徑的最大長度。

NTFS本身,原生NT API和使用\\?\的Win32 API支持更長的路徑。但對於「正常」路徑,由於歷史原因,Win32被限制爲260個字符。特別是C程序依賴於260字符緩衝區可以包含任何路徑的事實。 Microsoft負責Win32 API的部分非常小心,不要破壞與舊程序的兼容性。

1

我假設「\ obj ..」目錄在某個深度路徑中,所以修復方法是移動它,使其不超過260/248長度限制。

相關問題