2008-12-31 43 views
1

現在越來越多的人在構建大型項目時遇到以下錯誤。無法在編譯時創建臨時文件

致命錯誤C1083:無法打開 編譯器中間文件: 'C:\ TEMP \ SYS \ a03132ex':拒絕

它發生在Visual Studio 2003和VC6,我有權限 調查了潛在的MSDN原因,並得出了一個空白。硬盤上有足夠的空間,並沒有很多其他程序打開,我應該用盡手柄。任何想法,或者是時候重新安裝Windows了。順便說一句,我正在運行XP SP3,並且有兩個大文件的NTFS硬盤。

編輯:臨時文件的名稱發生變化,並且我清除了整個c:\ temp文件夾。

+0

作爲管理用戶運行嗎?或有限的用戶? – EvilTeach 2009-01-08 23:09:20

+0

你可以使用Windows資源管理器在c:\ Temp \ SYS中創建一個文本文件嗎? – EvilTeach 2009-01-08 23:10:26

回答

1

我似乎記得從某個深層次的內存通道中刪除由visual studio爲該項目創建的臨時文件修復了此問題(直到它再次彈出)。

臨時文件與您的項目具有相同的名稱。 (如果沒有幫助的話,你的主目錄中可能還會有一些與VC/VS相關的東西)。

1

如果這沒有幫助,請檢查您的TMP環境設置是否不以分號結尾。它也應該是一個完全合格的路徑,而不是相對的。

編輯:我在the internet上發現了一個關於它的話題,那裏有人說如果你試圖包含一個目錄而不是文件,你可以觸發那個非常相同的錯誤。

我假設你已經驗證了這一點,但實際的C:\ Temp \ SYS文件夾是否具有正確的權限(即允許所有用戶讀/寫其中的文件)?

1

你也可以查看與c:\tempc:\temp\sys關聯的權限(如果SYS不編譯會話之外存在)

cacls c:\temp 

另外,(如suggested here),嘗試在高級選項設置編譯器標誌和-Bd檢查參數到編譯器中。也許你打算指定一個路徑並最終編譯一個不存在的文件?

1

保持您的臨時文件位置很簡單,例如,當我將筆記本電腦中的項目複製到辦公室PC時,VS2003項目未編譯。「tmp」系統變量指向%USERPROFILE%/ TEMP。視覺工作室2003給幾個「致命錯誤C1083:無法打開編譯器中間文件:」錯誤

我在C驅動器上做了一個新的Temp文件夾,並將系統變量TMP更改爲「C:/ TEMP」。重新編譯該程序,Voilà沒有錯誤!

0

不要點擊在編譯重建按鈕,單擊只構建按鈕 - 這解決我的問題

0

我有完全一樣的問題。在構建項目時禁用防病毒解決了該問題。一個可能的永久解決方案是將VS的臨時目錄設置在其他地方,並告訴防病毒服務器排除該目錄。