Popravak: Kršenje pristupa pojavljuje kada pokrenete aplikacije Visual C++ 2010 temelji za x64 temelji platforme ako koristite na "/ O2" kompilator mogućnost za izgradnju projekta

Vrijedi za: Visual Studio 2010

Simptomi


Razmotrite sljedeći scenarij:
  • Imate projekt Visual C++ 2010. Šifra izvora projekta ima strukturu ili klasa premašuje 64 bajtova.
  • Izgradite projekta x64 temelji platformi i koristite mogućnost kompilator /O2
  • Izvođenje aplikacije.
U ovom scenariju, dolazi do kršenja prava pristupa i aplikacije ruši.

Uzrok


Taj se problem pojavljuje jer kompilator x64 temelji Visual Studio 2010 optimizira šifru prilagodbom alokacije poravnanje podataka od 64 bajtova 16 bajta. Stoga memorije problem pojavljuje za objekte koji premašiti 64 bajtova.

Rješenje


Informacije o hitnim popravkom

Podržani prilagodbeni popravak dostupan je iz Microsoft. No taj hitni popravak je namijenjen samo ispravku problema opisanog u ovom članku. Da biste primijenili taj hitni popravak samo na sustave u kojima se pojavljuje upravo taj problem. Taj hitni popravak možda dodatno testirati. Stoga, ako vam se ne uzrokuje taj problem, preporučujemo da pričekate sljedeće ažuriranje softvera koje sadrži taj hitni popravak. Da biste preuzeli taj hitni popravak iz galerije Šifra MSDN, posjetite sljedeće Microsoftovo web-mjesto: Napomena Galerija Šifra MSDN prikazuje jezicima za koje je hitni popravak dostupan. Ako ne vidite svoj jezik naveden, je jer stranica Galerija Šifra resurs nije dostupan za taj jezik. Napomena Ako se pojave dodatni problemi ili je potrebno otklanjanje poteškoća, možda ćete morati stvoriti zaseban zahtjev za uslugom. Uobičajeni podršku troškovi će primijeniti na dodatna pitanja i probleme koji nemaju veze s ovim hitnim popravkom. Potpun popis brojeva telefona Microsoftove službe za podršku ili stvoriti zaseban zahtjev za uslugom, posjetite sljedeće Microsoftovo web-mjesto: Ovaj hitni popravak možete preuzeti i posjećivanju sljedeće Microsoftovo web-mjesto:

Preduvjeti

Da biste primijenili taj hitni popravak, morate imati instaliran Visual Studio 2010.

Potreba za ponovnim pokretanjem

Ne morate ponovo pokrenuti računalo nakon primjene hitnog popravka.

Informacije o zamjeni hitnog popravka

Ovaj hitni popravak nije zamjena za druge hitne popravke.

Podaci o datoteci

Engleska verzija ovog hitnog popravka ima atribute datoteka (ili novije atribute datoteka) koji su popisani u sljedećoj tablici. Datumi i vrijeme za te datoteke navedene su u koordiniranom univerzalnom vremenu (UTC). Kada pregledavate informacije o datoteci, pretvara se u lokalnom vremenu. Da biste saznali razliku između UTC i lokalnog vremena, koristite karticu vremenske Zone u stavci Datum i vrijeme na upravljačkoj ploči.
Naziv datotekeVerzija datotekeVeličina datotekeDatumVrijemePlatforma
C2.dll16.0.30319.3452,510,14401-Aug-201023:42x86
C2.dll16.0.30319.3452,588,48001-Aug-201023:42x86
C2.dll16.0.30319.3452,630,97601-Aug-201023:42x86
C2.dll16.0.30319.3452,977,08801-Aug-201023:42x64
C2.dll16.0.30319.3457,351,61601-Aug-201023:42IA-64

Zaobilazno rješenje


Da biste zaobišli taj problem, nemojte koristiti mogućnost /O2 kompilator kada izgraditi projekta.

Status


Microsoft je potvrdio da se taj problem pojavljuje u Microsoftovim proizvodima navedenima u odjeljku "Odnosi se na".