FIX: Onverwacht gedrag tijdens het uitvoeren van een toepassing gegenereerde Visual Studio 2008 Service Pack 1 die roept de functie setjmp of longjmp in een bronbestand

Vertaalde artikelen Vertaalde artikelen
Artikel ID: 2498381
Alles uitklappen | Alles samenvouwen

Op deze pagina

Symptomen

Het volgende scenario:
  • Inschakelen van de optie-(globale optimalisatie/Og) door een van de volgende opties:
    • / O1 
    • / O2 
    • /Ox 
  • Bouwen van een Microsoft Visual C++-bronbestand met behulp van Microsoft Visual Studio 2008 Service Pack 1 (SP1).
  • De aanroepen van de bron desetjmpfunctie, delongjmpfunctie of beide functies.

In dit scenario kan de compiler de dezelfde offset stapelen gebruiken om verschillende lokale variabelen opgeslagen. Daarom kan onverwacht gedrag optreden wanneer u de gegenereerde toepassing uitvoert.

Oorzaak

Dit probleem treedt op omdat de optimizer geen rekening met de setjmpfunctie of delongjmpfunctie. Hierdoor wordt de optimizer onjuist berekent de levensduur van de lokale variabelen. Wanneer één variabele wordt gewijzigd, kan een andere variabele onverwacht gewijzigd.

Oplossing

Informatie over hotfixes

Een ondersteunde hotfix is beschikbaar bij Microsoft. Deze hotfix is echter bedoeld alleen in dit artikel beschreven probleem op te lossen. Deze hotfix alleen uit op systemen waarop de in dit artikel beschreven probleem zich voordoet. Deze hotfix moet wellicht extra worden getest. Als u geen ernstige problemen ondervindt, is het daarom raadzaam te wachten op de volgende update waarin deze hotfix is opgenomen.

Dit probleem onmiddellijk contact op met Microsoft Customer Support Services om de hotfix te verkrijgen. Ga naar de volgende Microsoft-website voor een volledige lijst met telefoonnummers van Microsoft Customer Service and Support of een afzonderlijk serviceverzoek maken:
http://support.Microsoft.com/contactus/?ws=support
Opmerking In speciale gevallen kunnen kosten die normaal verbonden worden geannuleerd als een medewerker van Microsoft bepaalt dat een specifieke update de oplossing van uw probleem. De gebruikelijke ondersteuningskosten gelden voor extra ondersteuningsvragen die niet in aanmerking voor de specifieke update in kwestie komen.

Deze hotfix downloaden vanaf het Microsoft Developer Network (MSDN) Code galerie, gaat u naar de volgende Microsoft-website:
http://code.msdn.Microsoft.com/KB2498381

Opmerking De MSDN Code Gallery geeft de talen waarvoor de hotfix beschikbaar is. Als u uw taal vermeld niet ziet, is omdat de pagina Galerie met Code bron voor die taal beschikbaar is.

Of u kunt deze hotfix downloaden vanaf de volgende website van Microsoft Connect:
https://Connect.Microsoft.com/VisualStudio/downloads/DownloadDetails.aspx?DownloadID = 34826

Vereisten

U hebt voor deze hotfix Microsoft Visual Studio 2008 Service Pack 1 geïnstalleerd.

Opnieuw opstarten

U hebt de computer opnieuw opstarten nadat u deze hotfix installeren als u alle exemplaren van Visual Studio hebt gestopt.

Vervanging van hotfixes

Deze hotfix vervangt geen eerder uitgebrachte hotfix.

Bestandsgegevens

De algemene versie van deze hotfix installeert bestanden met de kenmerken die in de volgende tabellen worden weergegeven. De datums en tijden voor deze bestanden worden weergegeven in Coordinated Universal Time (UTC). De datums en tijden voor deze bestanden op uw lokale computer worden weergegeven in uw lokale tijd samen met uw huidige bias zomertijd (DST). Bovendien kunnen de datums en tijden veranderen wanneer u bepaalde bewerkingen op de bestanden uitvoeren.
Deze tabel samenvouwenDeze tabel uitklappen
BestandsnaamBestandsversieBestandsgrootteDatumTijdPlatform
C2.dll15.0.30729.61472,283,84025 Feb 201101: 25x 86
C2.dll15.0.30729.61472,362,68825 Feb 201101: 25x 86
C2.dll15.0.30729.61472,493,24825 Feb 201101: 25x 86
C2.dll15.0.30729.61473,018,04825 Feb 201101: 25x 64
C2.dll15.0.30729.61477,263,04025 Feb 201101: 25IA-64
Link.exe9.0.30729.61471,055,56025 Feb 201101: 25x 64
Link.exe9.0.30729.61472,135,36825 Feb 201101: 25IA-64
Link.exe9.0.30729.6147800,58425 Feb 201101: 25x 86



Workaround

Dit probleem omzeilen door lokale variabelen vroeg in de functie te initialiseren zodat de compiler van de levensduur van de variabelen.

Status

Microsoft heeft bevestigd dat dit probleem in de Microsoft-producten die worden vermeld in de sectie 'Van toepassing op' is.

Meer informatie

Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie over terminologie voor software-update:
824684 Beschrijving van de standaardterminologie die wordt gebruikt om software-updates voor Microsoft te beschrijven

Eigenschappen

Artikel ID: 2498381 - Laatste beoordeling: donderdag 21 april 2011 - Wijziging: 1.0
Trefwoorden: 
kbqfe kbhotfixserver kbfix kbexpertiseinter kbsurveynew kbbug kbmt KB2498381 KbMtnl
Automatisch vertaald artikel
BELANGRIJK: Dit artikel is vertaald door de vertaalmachine software van Microsoft in plaats van door een professionele vertaler. Microsoft biedt u professioneel vertaalde artikelen en artikelen vertaald door de vertaalmachine, zodat u toegang heeft tot al onze knowledge base artikelen in uw eigen taal. Artikelen vertaald door de vertaalmachine zijn niet altijd perfect vertaald. Deze artikelen kunnen fouten bevatten in de vocabulaire, zinsopbouw en grammatica en kunnen lijken op hoe een anderstalige de taal spreekt en schrijft. Microsoft is niet verantwoordelijk voor onnauwkeurigheden, fouten en schade ontstaan door een incorrecte vertaling van de content of het gebruik ervan door onze klanten. Microsoft past continue de kwaliteit van de vertaalmachine software aan door deze te updaten.
De Engelstalige versie van dit artikel is de volgende:2498381

Geef ons feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com