KORRIGERA: Ett åtkomstfel uppstår när du kör en Visual C++ 2010-baserat program för x64-baserade plattformar om du använder den ”/ O2” kompilatoralternativ att bygga projektet

Symptom

Tänk dig följande situation:

  • Du har ett projekt i Visual C++ 2010. Källkoden för projektet har en struktur eller en klass som överstiger 64 byte.

  • Du bygger ett projekt för en x64-baserad plattform och använder /O2 kompilatoralternativ.

  • Du kör programmet.

I det här fallet ett åtkomstfel uppstår och programmet kraschar.

Orsak

Det här problemet uppstår eftersom x64-baserade kompileraren i Visual Studio 2010 optimerar koden genom att justera fördelningen justeringen av data från 64 byte till 16 byte. Därför uppstår ett problem med minne för objekt som överstiger 64 byte.

Lösning

Information om snabbkorrigeringen

En snabbkorrigering är tillgänglig från Microsoft. Den här snabbkorrigeringen är emellertid avsedd att åtgärda det problem som beskrivs i denna artikel. Använd bara den här snabbkorrigeringen för system med just detta problem. Snabbkorrigeringen kan komma att testas igen. Om du inte störs alltför mycket av detta problem rekommenderar vi att du väntar på nästa programuppdatering som innehåller den här snabbkorrigeringen. Om du vill hämta snabbkorrigeringen från galleriet MSDN-kod finns på följande Microsoft-webbplats:

http://code.msdn.microsoft.com/KB2280741Obs! Galleri för MSDN-kod visar de språk som snabbkorrigeringen är tillgänglig. Om du inte ser ditt språk i listan beror det på att koden Gallery resurssidan inte är tillgänglig för språket. Obs! Om det uppstår ytterligare problem eller krävs felsökning, kan du behöva skapa en serviceförfrågan. De vanliga supportkostnaderna gäller för övriga supportfrågor och problem som inte uppfyller kraven för den här snabbkorrigeringen. En fullständig lista över telefonnummer för Microsofts kundtjänst och Support eller skapa en serviceförfrågan finns på följande Microsoft-webbplats:

http://support.microsoft.com/contactus/?ws=supportDu kan också hämta snabbkorrigeringen genom att besöka följande Microsoft-webbplats:

https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=31433

Förutsättningar

Om du vill installera den här snabbkorrigeringen måste du ha installerat Visual Studio 2010.

Krav på omstart

Du behöver inte starta om datorn när du har installerat snabbkorrigeringen.

Ersättningsinformation för Hotfix

Den här snabbkorrigeringen ersätter inte några andra snabbkorrigeringar.

Filinformation

Den engelska versionen av den här snabbkorrigeringen har de filattribut (eller senare filattribut) som visas i följande tabell. Datum och tider för dessa filer anges i UTC-tid (UTC). När du visar filinformationen konverteras den till lokal tid. Använd fliken tidszon i datum och tid på Kontrollpanelen om du vill se skillnaden mellan UTC-tid och lokal tid.

Filnamn

Filversion

Storlek

Datum

Tid

Plattform

C2.dll

16.0.30319.345

2,510,144

01-Aug-2010

23:42

x86

C2.dll

16.0.30319.345

2,588,480

01-Aug-2010

23:42

x86

C2.dll

16.0.30319.345

2,630,976

01-Aug-2010

23:42

x86

C2.dll

16.0.30319.345

2,977,088

01-Aug-2010

23:42

x64

C2.dll

16.0.30319.345

7,351,616

01-Aug-2010

23:42

IA-64

Lösning

Undvik det här problemet, Använd inte kompilatoralternativ /O2 när du skapar projektet.

Status

Microsoft har bekräftat att detta är ett problem i Microsoft-produkterna som nämns i avsnittet ”gäller”.

Behöver du mer hjälp?

Utöka dina kunskaper
Utforska utbildning
Få nya funktioner först
Anslut till Microsoft Insiders

Hade du nytta av den här informationen?

Tack för din feedback!

Tack för din feedback! Det låter som att det kan vara bra att koppla dig till en av våra Office-supportrepresentanter.

×