您目前已離線,請等候您的網際網路重新連線

修正︰ Visual C++ 2013年無法偵測的緩衝區滿溢或發出警告 C4789

請注意--重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,且可能由 Microsoft Community 利用 Community Translation Framework技術或人工進行事後編修。翻譯過程並無專業譯者參與。Microsoft 同時提供使用者人為翻譯、機器翻譯及社群編修後的機器翻譯三種版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,所有翻譯文章都可能不盡完美,內容都可能出現詞彙、語意或文法上的錯誤。就翻譯內容之不正確或錯誤,或客戶因使用翻譯內容所產生的任何損害,微軟不負擔任何責任。Microsoft將依合理的商業努力不斷地更新機器翻譯軟體和工具,以期能為使用者提供更好的服務。

按一下這裡查看此文章的英文版本:3170268
徵狀
根據 MSDN library 中當您使用 Visual C++ 2013 C/c + + 編譯器,編譯 C 或 c + + 原始程式碼 Visual C++ 2013年應該偵測到一些緩衝區滿溢案例 (只有一種可以偵測到,在編譯時期的課程),並發出 警告 C4789.

不過,部分的緩衝區滿溢未攔截到所有的最佳化設定 Visual C++ 2013,即使您已經安裝 Visual Studio 的 2013年更新 5。在舊版 Visual C++ 2010年已成功發出警告 C4789,就會不發出任何警告 C4789。

附註安裝此 hotfix 之後,Visual C++ 2013年可以偵測的緩衝區滿溢,並發出的警告 C4789 發行組態建置 (萬一不能用/Od )。
發生的原因
發生這個問題,因為 Visual Studio 2013 C/c + + 編譯器中有問題。
解決方案

Hotfix 資訊

可從「Microsoft 下載中心」下載下列檔案:
下載立即下載 hotfix 套件。

如需有關如何下載 Microsoft 支援檔案的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
119591 如何從線上服務取得 Microsoft 的支援檔案
Microsoft 會掃描這個檔案有無病毒。Microsoft 會使用張貼檔案當日可使用的最新病毒偵測軟體。檔案會儲存在加強安全性的伺服器,以避免受到任何未經授權的更改。

先決條件

若要套用此 hotfix,您必須安裝 Visual Studio 2013年。

登錄資訊

若要使用在此套件中的 hotfix,您不需要對登錄進行任何變更。

重新啟動需求

您不必套用此 hotfix 之後,請重新啟動電腦。

Hotfix 取代資訊

此 hotfix 不會取代先前發行的 hotfix。
其他可行方案
要解決這個問題,請使用/Oi編譯器參數或程式碼分析來偵測編譯時期的緩衝區滿溢的多個執行個體。
狀況說明
Microsoft 已確認這是「套用」一節所列出的 Microsoft 產品的問題。

警告:本文為自動翻譯

內容

文章識別碼:3170268 - 最後檢閱時間:07/21/2016 21:02:00 - 修訂: 1.0

Visual Studio 2013 Community Edition, Microsoft Visual Studio 2013 Software Development Kit

  • kbqfe kbsurveynew kbfix kbexpertiseadvanced atdownload kbmt KB3170268 KbMtzh
意見反應
" src="https://c.microsoft.com/ms.js">