REMEDIERE: Visual C++ 2013 nu poate detecta depășirile de tampon sau emite avertismente C4789

Se aplică la
Visual Studio Community 2013 Visual Studio 2013 SDK

Simptome

Conform bibliotecii MSDN, atunci când compilați cod sursă C sau C++ utilizând compilatorul Visual C++ 2013 C/C++, Visual C++ 2013 ar trebui să detecteze unele scenarii de depășire a tamponului (desigur, doar pe cele care pot fi detectate la momentul compilării) și să emită avertismentul C4789.

Totuși, unele depășiri ale zonei tampon nu sunt detectate cu toate setările de optimizare de către Visual C++ 2013, chiar dacă ați instalat Visual Studio 2013 Update 5. Nu este emis niciun avertisment C4789 acolo unde versiunea veche Visual C++ 2010 a emis cu succes avertismentul C4789.

Notă După ce instalați această remediere rapidă, Visual C++ 2013 poate detecta depășirile de tampon și emite avertismentul C4789 pentru compilările de configurare a lansării (în cazul în care nu se utilizează /od).

Cauză

Această problemă apare din cauza unei probleme cu compilatorul Visual Studio 2013 C/C++.

Rezolvare

Informații despre remedierea rapidă

Fișierul următor este disponibil pentru descărcare de la Centrul de descărcare Microsoft:
Descărcați acum pachetul de remediere rapidă.

 Pentru informații suplimentare despre modul de descărcare a fișierelor de suport Microsoft, faceți clic pe următorul număr de articol pentru a vedea articolul în Baza de cunoștințe Microsoft:

119591 Cum se obțin fișierele de asistență Microsoft de la servicii online Microsoft a scanat acest fișier pentru viruși. Microsoft a utilizat cel mai recent software de detectare a virușilor care era disponibil la data publicării fișierului. Fișierul este stocat pe servere cu securitate îmbunătățită care contribuie la prevenirea oricăror modificări neautorizate aduse fișierului.

Cerințe preliminare

Pentru a aplica această remediere rapidă, trebuie să aveți instalat Visual Studio 2013.

Informații despre registry

Pentru a utiliza remedierea rapidă din acest pachet, nu trebuie să faceți modificări la registry.

Cerința de repornire

Nu este necesar să reporniți computerul după ce aplicați această remediere rapidă.

Informații despre înlocuirea remedierii rapide

Această remediere rapidă nu înlocuiește o remediere rapidă lansată anterior.

Soluție

Pentru a evita această problemă, utilizați comutatorul de compilator /oi sau analiza codului pentru a detecta mai multe instanțe de depășiri ale tamponului la momentul compilării.

Stare

Microsoft a confirmat că aceasta este o problemă în produsele Microsoft care sunt listate în secțiunea „Se aplică la”.