Problembeschreibung
Symptom 1
Wenn Sie Microsoft Visual C++-Projekt, die eine Enumerationsdeklaration an einem bestimmten Offset kompilieren, erhalten Sie einen Fehler C2371 generiert, C2556 generiert und C2511 generiert.
Ursache 1
Dieses Problem tritt auf, weil der Compiler fälschlicherweise Enumeration Deklarationscode analysiert, die am Ende eines Dateipuffers [Datei-Offset (4096 * n)-1].
Symptom 2
Sie kompilieren eine Visual C++-Projekt, das einen virtuellen Funktionsaufruf ein Objekt zurückgibt und den zurückgegebenen Wert an einen Verweis gebunden. Sie können die Option/CLR aktiviert. In diesem Fall erhalten Sie eine Zugriffsverletzungsausnahme zur Laufzeit.
Ursache 2
Dieses Problem tritt auf, weil die implizite Lebensdauer Erweiterung einen temporären Wert einen Konstanten Verweis gebunden ist nicht funktioniert, wenn Folgendes zutrifft:
-
Das Projekt wird als/CLRkompiliert.
-
Temporäre Wert ist der zurückgegebene Wert einen virtuellen Funktionsaufruf oder einen Funktionsaufruf durch einen Funktionszeiger.
Problemlösung
Hotfix-Informationen
Ein unterstützter Hotfix ist von Microsoft erhältlich. Dieser Hotfix soll nur der Behebung des Problems dienen, das in diesem Artikel beschrieben wird. Verwenden Sie diesen Hotfix nur auf Systemen, bei denen dieses spezielle Problem auftritt.
Wenn der Hotfix zum Download zur Verfügung steht, gibt es einen Abschnitt "Hotfix download available" ("Hotfixdownload verfügbar") im oberen Bereich dieses Knowledge Base-Artikels. Wenn dieser Abschnitt nicht angezeigt wird, senden Sie eine Anforderung an Microsoft Customer Service and Support, um den Hotfix zu erhalten.
Hinweis Falls weitere Probleme auftreten oder andere Schritte zur Problembehandlung erforderlich sind, müssen Sie möglicherweise eine separate Serviceanfrage erstellen. Die normalen Supportkosten gelten für zusätzliche Supportfragen und Probleme, die nicht diesem speziellen Hotfix zugeordnet werden können. Eine vollständige Liste der Telefonnummern von Microsoft Customer Service and Support oder eine separate Serviceanfrage erstellen finden Sie auf folgender Microsoft-Website:
http://support.microsoft.com/contactus/?ws=supportHinweis Das Formular "Hotfix Download Available" zeigt die Sprachen an, für die der Hotfix verfügbar ist. Wenn Ihre Sprache nicht angezeigt wird, ist dieser Hotfix für Ihre Sprache nicht verfügbar.
Voraussetzungen
Um diesen Hotfix anwenden zu können, müssen Sie Microsoft Visual Studio 2012 Update 4 installiert.
Neustartanforderung
Sie müssen den Computer neu starten, nachdem Sie den Hotfix installieren, wenn die betroffenen Dateien nicht zum Zeitpunkt der Installation verwendet werden. Es wird empfohlen, alle Visual Studio 2012-Komponenten zu schließen, bevor Sie den Hotfix installieren.
Status
Microsoft hat bestätigt, dass es sich um ein Problem bei den Microsoft-Produkten handelt, die im Abschnitt „Eigenschaften“ aufgeführt sind.