狀況

當您執行 Microsoft Visual C++ 2008年有更多的編譯器編譯的檔案,或建置專案時,您會收到下列錯誤訊息︰

嚴重錯誤 C1859︰標頭檔名稱未預期先行編譯標頭,只要重新執行編譯器可能會修正此問題。

此外,仍會發生這個問題甚至當您執行編譯器一次。當您啟用建立/使用先行編譯標頭編譯器選項,在執行 Windows 7 或 Windows Server 2008 的電腦上,就會發生這個問題。

注意如果您啟用/analyze編譯器選項,就可能經常遇到這個問題更多。

原因

當您啟用 [建立/使用先行編譯標頭編譯器選項時,編譯器會要求,先行編譯標頭檔及相對的模組不會移動編譯之間。不過,位址空間配置隨機載入 (也稱為 ASLR) 功能隨機基底位址的處理序中的模組。因此,當編譯之間移動的模組時,就會發生錯誤。

解決方案

Hotfix 資訊

支援的 hotfix 可從 Microsoft 取得。不過,此 Hotfix 僅用於修正本文中所述的問題。此 Hotfix 只適用於發生此特定問題的系統上。此 hotfix 可能會接受其他測試。因此,如果此問題的影響不會很嚴重,我們建議您等候含此 hotfix 的下一版軟體更新。

若要下載此 hotfix,從 Microsoft 開發人員網路 (MSDN) 的程式碼庫,請造訪下列 Microsoft 網站︰

http://code.msdn.microsoft.com/KB976656
注意MSDN 程式碼庫顯示 hotfix 是可用的語言。如果看不到您所使用的語言,它是因為代碼庫資源頁面未提供該語言的支援。


注意如果發生其他問題,或如果需要進行疑難排解,您可能必須建立個別的服務要求。收取支援費用會套用到其他支援問題和此特定 hotfix 無法解決的問題。如 Microsoft 客戶服務及支援的電話號碼或建立個別的服務要求的完整清單,請造訪下列 Microsoft 網站︰

http://support.microsoft.com/contactus/?ws=support注意您也可以下載此 hotfix 下列 Microsoft 網站︰

https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=25785注意此 hotfix 套件也包含的通用修正程式"C1001︰ 內部錯誤發生在編譯器 (編譯器檔案 f:\dd\vctools\compiler\utc\src\p2\main.c,行 182) 當您使用.NET framework 3.5。

先決條件

您必須擁有 Microsoft Visual Studio 2008 Service Pack 1 安裝套用此 hotfix 之後。

重新啟動需求

如果沒有 Visual Studio 執行個體正在使用中的話,套用此 hotfix 之後不需要重新啟動電腦。

Hotfix 取代資訊

此 hotfix 不會取代任何其他 hotfix。

檔案資訊


此 hotfix 的英文版具有下列表格中所列檔案屬性 (或較新的檔案屬性)。這些檔案的日期和時間會以國際標準時間 (UTC) 格式列出。當您檢視檔案資訊時,會將它轉換為本地時間。若要查看 UTC 與當地時間的時差,請使用
時區
在索引標籤
日期和時間
在 [控制台] 中的項目。

檔案名稱

檔案版本

檔案大小

日期

時間

C1.dll

15.0.30729.4455

677,184

10-Dec-2009

02:31

C1.dll

15.0.30729.4455

828,744

10-Dec-2009

02:31

C1xx.dll

15.0.30729.4455

2,202,952

10-Dec-2009

02:31

C1xx.dll

15.0.30729.4455

2,213,704

10-Dec-2009

02:31

C1xx.dll

15.0.30729.4455

2,348,360

10-Dec-2009

02:31

C1xx.dll

15.0.30729.4455

2,504,016

10-Dec-2009

02:31

C1xx.dll

15.0.30729.4455

2,890,568

10-Dec-2009

02:31

因應措施

若要解決這個問題,請使用下列方法之一。


方法 1

如果啟用,請停用 [ /analyze編譯器選項。

方法 2

啟動乾淨的組建。

方法 3

重新啟動電腦。

方法 4

停用建立/使用先行編譯標頭的編譯器選項。


注意這些方法並不保證工作。即使您使用其中一個方法,您可能仍會遇到這個問題。

狀態

Microsoft 已確認這是<套用>一節所列出的 Microsoft 產品的問題。

更多的資訊

如需有關位址空間配置隨機的詳細資訊,請造訪下列 Microsoft 的部落格文章︰

解決 Windows Vista 中的空間配置隨機如需先行編譯標頭錯誤的詳細資訊,請造訪下列 Microsoft 的部落格文章︰

在 Windows 7 中的先行編譯標頭錯誤

Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Insiders

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?

Thank you for your feedback!

×