Problembeschreibung
Auf einem Computer, auf dem Microsoft.NET Framework 3.5 Servicepack 1 (SP1) ausgeführt wird, kann der Just-in-Time (JIT) Compiler und Native Image Generator (Ngen.exe), mit dem die Datei Mscorjit.dll inkorrekten Code generieren. Eine 32-Bit-verwaltete C++-Anwendung kann daher zu falschen Ergebnissen führen.
Dieses Problem tritt auf, wenn Folgendes zutrifft:
-
Die Struktur oder Klasse im Quellcode verfügt über weniger als vier skalare Sorten und keine verwalteten Objektverweisen.
-
Verwenden Sie die Anweisung cpblk oder die Anweisung initblk.
Hinweis Dieses Problem tritt nicht in 64-Bit-Anwendung.
Ursache
Dieses Problem tritt aufgrund einer Regression in.NET Framework 3.5 SP1.
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. Dieser Hotfix sollte weiteren Tests unterzogen werden. Wenn Ihr System durch dieses Problem nicht schwerwiegend beeinträchtigt ist, empfehlen wir sie, auf das nächste Softwareupdate zu warten, das diesen Hotfix enthält.
Um diesen Hotfix aus der MSDN Code Gallery herunterzuladen, besuchen Sie folgende Microsoft-Website:
http://code.msdn.microsoft.com/KB957542
Hinweis Der MSDN Code Gallery zeigt die Sprachen an, für die der Hotfix verfügbar ist. Die aufgeführten Sprache nicht angezeigt wird, ist der Code Gallery-Ressourcenseite nicht für diese Sprache steht.
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. Für eine vollständige Liste der Telefonnummern des Microsoft Customer Service and Support, oder um eine separate Serviceanfrage zu erstellen, gehen Sie auf folgende Microsoft-Website:
http://support.microsoft.com/contactus/?ws=supportHinweis Wenn Sie 32-Bit-Anwendung auf einem 64-Bit-Plattform ausgeführt, wenden Sie den Hotfix für die 64-Bit-Version zur Behebung dieses Problems.
Voraussetzungen
Sie müssen.NET Framework 3.5 SP1 installiert, um diesen Hotfix anwenden.
Neustartanforderung
Möglicherweise den Computer neu starten, wenn alle aktualisierten Dateien verwendet werden.
Informationen zu ersetzten Hotfixes
Dieser Hotfix ersetzt keine anderen Hotfixes.
Dateiinformationen
Die englische Version dieses Hotfixes weist Dateiattribute (oder spätere Attribute), die in der folgenden Tabelle aufgelistet sind. Die Datums- und Uhrzeitangaben für diese Dateien sind in Coordinated Universal Time (UTC) aufgelistet. Wenn Sie die Dateiinformationen anzeigen, werden sie in die lokale Zeit konvertiert. Um die Differenz zwischen UTC und der Ortszeit zu finden, verwenden Sie die Registerkarte Zeitzone unter Datum und Uhrzeit in der Systemsteuerung.
Windows 2000, Windows XP und Windows Server 2003 X86 Versionen
Dateiname |
Dateiversion |
Dateigröße |
Datum |
Zeit |
---|---|---|---|---|
Mscordacwks.dll |
2.0.50727.3068 |
992,264 |
16-Sep-2008 |
13:13 |
Mscorjit.dll |
2.0.50727.3068 |
367,104 |
16-Sep-2008 |
13:13 |
Mscorlib.dll |
2.0.50727.3068 |
4,546,560 |
16-Sep-2008 |
13:13 |
Mscorwks.dll |
2.0.50727.3068 |
5,815,808 |
16-Sep-2008 |
13:13 |
Windows 2000, Windows XP und Windows Server 2003 X64 Versionen
Dateiname |
Dateiversion |
Dateigröße |
Datum |
Zeit |
Plattform |
---|---|---|---|---|---|
Mscordacwks.dll |
2.0.50727.3068 |
992,264 |
16-Sep-2008 |
13:13 |
x86 |
Mscorjit.dll |
2.0.50727.3068 |
367,104 |
16-Sep-2008 |
13:13 |
x86 |
Mscorlib.dll |
2.0.50727.3068 |
4,546,560 |
16-Sep-2008 |
13:13 |
x86 |
Mscorwks.dll |
2.0.50727.3068 |
5,815,808 |
16-Sep-2008 |
13:13 |
x86 |
Mscordacwks.dll |
2.0.50727.3068 |
1,767,944 |
16-Sep-2008 |
10:33 |
x64 |
Mscorjit.dll |
2.0.50727.3068 |
1,580,032 |
16-Sep-2008 |
10:33 |
x64 |
Mscorlib.dll |
2.0.50727.3068 |
4,562,944 |
16-Sep-2008 |
10:33 |
x64 |
Mscorwks.dll |
2.0.50727.3068 |
10,079,744 |
16-Sep-2008 |
10:33 |
x64 |
Windows 2000, Windows XP und Windows Server 2003 IA-64-Versionen
Dateiname |
Dateiversion |
Dateigröße |
Datum |
Zeit |
Plattform |
---|---|---|---|---|---|
Mscordacwks.dll |
2.0.50727.3068 |
992,264 |
16-Sep-2008 |
13:13 |
x86 |
Mscorjit.dll |
2.0.50727.3068 |
367,104 |
16-Sep-2008 |
13:13 |
x86 |
Mscorlib.dll |
2.0.50727.3068 |
4,546,560 |
16-Sep-2008 |
13:13 |
x86 |
Mscorwks.dll |
2.0.50727.3068 |
5,815,808 |
16-Sep-2008 |
13:13 |
x86 |
Mscordacwks.dll |
2.0.50727.3068 |
3,087,880 |
16-Sep-2008 |
10:44 |
IA-64 |
Mscorjit.dll |
2.0.50727.3068 |
2,560,512 |
16-Sep-2008 |
10:44 |
IA-64 |
Mscorlib.dll |
2.0.50727.3068 |
4,005,888 |
16-Sep-2008 |
10:44 |
IA-64 |
Mscorwks.dll |
2.0.50727.3068 |
20,153,856 |
16-Sep-2008 |
10:44 |
IA-64 |
Windows Vista Service Pack 1 (SP1) und Windows Server 2008 X86 Versionen
Dateiname |
Dateiversion |
Dateigröße |
Datum |
Zeit |
Plattform |
---|---|---|---|---|---|
Mscorlib.resources.dll |
2.0.50727.3053 |
352,256 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
303,104 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
315,392 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
425.984 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
307.200 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
311,296 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
331,776 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
315,392 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
307.200 |
27-Jul-2008 |
17:55 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
348,160 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
319,488 |
27-Jul-2008 |
17:55 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
290,816 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
303,104 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
311,296 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
303,104 |
27-Jul-2008 |
17:55 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
307.200 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.1434 |
397,312 |
11-Jan-2008 |
22:59 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
278,528 |
27-Jul-2008 |
17:55 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
278,528 |
27-Jul-2008 |
17:55 |
x86 |
Big5.nlp |
PC |
66,728 |
18-Dec-2007 |
21:03 |
PC |
Bopomofo.nlp |
PC |
82,172 |
18-Dec-2007 |
21:03 |
PC |
Ksc.nlp |
PC |
116,756 |
18-Dec-2007 |
21:04 |
PC |
Mscorlib.dll |
2.0.50727.3068 |
4,546,560 |
01-Oct-2008 |
22:27 |
x86 |
Normidna.nlp |
PC |
59,342 |
18-Dec-2007 |
21:05 |
PC |
Normnfc.nlp |
PC |
45,794 |
18-Dec-2007 |
21:05 |
PC |
Normnfd.nlp |
PC |
39,284 |
18-Dec-2007 |
21:05 |
PC |
Normnfkc.nlp |
PC |
66,384 |
18-Dec-2007 |
21:05 |
PC |
Normnfkd.nlp |
PC |
60,294 |
18-Dec-2007 |
21:05 |
PC |
Prc.nlp |
PC |
83,748 |
18-Dec-2007 |
21:05 |
PC |
Prcp.nlp |
PC |
83,748 |
18-Dec-2007 |
21:05 |
PC |
Sortkey.nlp |
PC |
262,148 |
18-Dec-2007 |
21:05 |
PC |
Sorttbls.nlp |
PC |
20,320 |
18-Dec-2007 |
21:05 |
PC |
Xjis.nlp |
PC |
28,288 |
18-Dec-2007 |
21:05 |
PC |
Mscordacwks.dll |
2.0.50727.3068 |
992,264 |
01-Oct-2008 |
22:27 |
x86 |
Mscorjit.dll |
2.0.50727.3068 |
367,104 |
24-Sep-2008 |
22:21 |
x86 |
Mscorwks.dll |
2.0.50727.3068 |
5,815,808 |
01-Oct-2008 |
22:27 |
x86 |
Windows Vista SP1 und Windows Server 2008 X64 Versionen
Dateiname |
Dateiversion |
Dateigröße |
Datum |
Zeit |
Plattform |
---|---|---|---|---|---|
Big5.nlp |
PC |
66,728 |
18-Dec-2007 |
21:01 |
PC |
Bopomofo.nlp |
PC |
82,172 |
18-Dec-2007 |
21:01 |
PC |
Ksc.nlp |
PC |
116,756 |
18-Dec-2007 |
21:02 |
PC |
Mscorlib.dll |
2.0.50727.3068 |
4,562,944 |
01-Oct-2008 |
22:25 |
x64 |
Normidna.nlp |
PC |
59,342 |
18-Dec-2007 |
21:03 |
PC |
Normnfc.nlp |
PC |
45,794 |
18-Dec-2007 |
21:03 |
PC |
Normnfd.nlp |
PC |
39,284 |
18-Dec-2007 |
21:03 |
PC |
Normnfkc.nlp |
PC |
66,384 |
18-Dec-2007 |
21:03 |
PC |
Normnfkd.nlp |
PC |
60,294 |
18-Dec-2007 |
21:03 |
PC |
Prc.nlp |
PC |
83,748 |
18-Dec-2007 |
21:03 |
PC |
Prcp.nlp |
PC |
83,748 |
18-Dec-2007 |
21:03 |
PC |
Sortkey.nlp |
PC |
262,148 |
18-Dec-2007 |
21:03 |
PC |
Sorttbls.nlp |
PC |
20,320 |
18-Dec-2007 |
21:03 |
PC |
Xjis.nlp |
PC |
28,288 |
18-Dec-2007 |
21:03 |
PC |
Mscordacwks.dll |
2.0.50727.3068 |
1,767,944 |
01-Oct-2008 |
22:25 |
x64 |
Mscorjit.dll |
2.0.50727.3068 |
1,580,032 |
24-Sep-2008 |
23:06 |
x64 |
Mscorwks.dll |
2.0.50727.3068 |
10,079,744 |
01-Oct-2008 |
22:25 |
x64 |
Mscorlib.resources.dll |
2.0.50727.3053 |
352,256 |
15-Sep-2008 |
22:26 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
303,104 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:26 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
315,392 |
27-Jul-2008 |
18:02 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
425.984 |
15-Sep-2008 |
22:26 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
307.200 |
27-Jul-2008 |
18:02 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:26 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
311,296 |
27-Jul-2008 |
18:02 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
331,776 |
15-Sep-2008 |
22:26 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
315,392 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
307.200 |
27-Jul-2008 |
17:56 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
348,160 |
27-Jul-2008 |
18:02 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
319,488 |
27-Jul-2008 |
17:56 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
290,816 |
15-Sep-2008 |
22:26 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
303,104 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
311,296 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
303,104 |
27-Jul-2008 |
17:56 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
307.200 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.1434 |
397,312 |
11-Jan-2008 |
22:59 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
299,008 |
15-Sep-2008 |
22:25 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
278,528 |
27-Jul-2008 |
17:56 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
278,528 |
27-Jul-2008 |
17:56 |
x86 |
Big5.nlp |
PC |
66,728 |
18-Dec-2007 |
21:03 |
PC |
Bopomofo.nlp |
PC |
82,172 |
18-Dec-2007 |
21:03 |
PC |
Ksc.nlp |
PC |
116,756 |
18-Dec-2007 |
21:04 |
PC |
Mscorlib.dll |
2.0.50727.3068 |
4,546,560 |
01-Oct-2008 |
22:27 |
x86 |
Normidna.nlp |
PC |
59,342 |
18-Dec-2007 |
21:05 |
PC |
Normnfc.nlp |
PC |
45,794 |
18-Dec-2007 |
21:05 |
PC |
Normnfd.nlp |
PC |
39,284 |
18-Dec-2007 |
21:05 |
PC |
Normnfkc.nlp |
PC |
66,384 |
18-Dec-2007 |
21:05 |
PC |
Normnfkd.nlp |
PC |
60,294 |
18-Dec-2007 |
21:05 |
PC |
Prc.nlp |
PC |
83,748 |
18-Dec-2007 |
21:05 |
PC |
Prcp.nlp |
PC |
83,748 |
18-Dec-2007 |
21:05 |
PC |
Sortkey.nlp |
PC |
262,148 |
18-Dec-2007 |
21:05 |
PC |
Sorttbls.nlp |
PC |
20,320 |
18-Dec-2007 |
21:05 |
PC |
Xjis.nlp |
PC |
28,288 |
18-Dec-2007 |
21:05 |
PC |
Mscordacwks.dll |
2.0.50727.3068 |
992,264 |
01-Oct-2008 |
22:27 |
x86 |
Mscorjit.dll |
2.0.50727.3068 |
367,104 |
24-Sep-2008 |
22:21 |
x86 |
Mscorwks.dll |
2.0.50727.3068 |
5,815,808 |
01-Oct-2008 |
22:27 |
x86 |
Windows Vista SP1 und IA-64-Versionen von Windows Server 2008
Dateiname |
Dateiversion |
Dateigröße |
Datum |
Zeit |
Plattform |
---|---|---|---|---|---|
Big5.nlp |
PC |
66,728 |
18-Dec-2007 |
21:06 |
PC |
Bopomofo.nlp |
PC |
82,172 |
18-Dec-2007 |
21:06 |
PC |
Ksc.nlp |
PC |
116,756 |
18-Dec-2007 |
21:06 |
PC |
Mscorlib.dll |
2.0.50727.3068 |
4,005,888 |
01-Oct-2008 |
22:26 |
IA-64 |
Normidna.nlp |
PC |
59,342 |
18-Dec-2007 |
21:08 |
PC |
Normnfc.nlp |
PC |
45,794 |
18-Dec-2007 |
21:08 |
PC |
Normnfd.nlp |
PC |
39,284 |
18-Dec-2007 |
21:08 |
PC |
Normnfkc.nlp |
PC |
66,384 |
18-Dec-2007 |
21:08 |
PC |
Normnfkd.nlp |
PC |
60,294 |
18-Dec-2007 |
21:08 |
PC |
Prc.nlp |
PC |
83,748 |
18-Dec-2007 |
21:08 |
PC |
Prcp.nlp |
PC |
83,748 |
18-Dec-2007 |
21:08 |
PC |
Sortkey.nlp |
PC |
262,148 |
18-Dec-2007 |
21:08 |
PC |
Sorttbls.nlp |
PC |
20,320 |
18-Dec-2007 |
21:08 |
PC |
Xjis.nlp |
PC |
28,288 |
18-Dec-2007 |
21:08 |
PC |
Mscordacwks.dll |
2.0.50727.3068 |
3,087,880 |
01-Oct-2008 |
22:26 |
IA-64 |
Mscorjit.dll |
2.0.50727.3068 |
2,560,512 |
24-Sep-2008 |
23:14 |
IA-64 |
Mscorwks.dll |
2.0.50727.3068 |
20,153,856 |
01-Oct-2008 |
22:26 |
IA-64 |
Mscorlib.resources.dll |
2.0.50727.3053 |
315,392 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
311,296 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
348,160 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
319,488 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
278,528 |
27-Jul-2008 |
17:58 |
x86 |
Mscorlib.resources.dll |
2.0.50727.3053 |
278,528 |
27-Jul-2008 |
17:59 |
x86 |
Big5.nlp |
PC |
66,728 |
18-Dec-2007 |
21:03 |
PC |
Bopomofo.nlp |
PC |
82,172 |
18-Dec-2007 |
21:03 |
PC |
Ksc.nlp |
PC |
116,756 |
18-Dec-2007 |
21:04 |
PC |
Mscorlib.dll |
2.0.50727.3068 |
4,546,560 |
01-Oct-2008 |
22:27 |
x86 |
Normidna.nlp |
PC |
59,342 |
18-Dec-2007 |
21:05 |
PC |
Normnfc.nlp |
PC |
45,794 |
18-Dec-2007 |
21:05 |
PC |
Normnfd.nlp |
PC |
39,284 |
18-Dec-2007 |
21:05 |
PC |
Normnfkc.nlp |
PC |
66,384 |
18-Dec-2007 |
21:05 |
PC |
Normnfkd.nlp |
PC |
60,294 |
18-Dec-2007 |
21:05 |
PC |
Prc.nlp |
PC |
83,748 |
18-Dec-2007 |
21:05 |
PC |
Prcp.nlp |
PC |
83,748 |
18-Dec-2007 |
21:05 |
PC |
Sortkey.nlp |
PC |
262,148 |
18-Dec-2007 |
21:05 |
PC |
Sorttbls.nlp |
PC |
20,320 |
18-Dec-2007 |
21:05 |
PC |
Xjis.nlp |
PC |
28,288 |
18-Dec-2007 |
21:05 |
PC |
Mscordacwks.dll |
2.0.50727.3068 |
992,264 |
01-Oct-2008 |
22:27 |
x86 |
Mscorjit.dll |
2.0.50727.3068 |
367,104 |
24-Sep-2008 |
22:21 |
x86 |
Mscorwks.dll |
2.0.50727.3068 |
5,815,808 |
01-Oct-2008 |
22:27 |
x86 |
PROBLEMUMGEHUNG
Um dieses Problem zu umgehen, verwenden Sie eine der folgenden Methoden.
Methode 1
Wenn der Anwendungscode den Beispielcode im Abschnitt "Weitere Informationen ähnelt" finden Sie die folgende Codezeile.
#define GETVECTOR3D(vec3d) (*reinterpret_cast<AcGeVector3d*>(&((vec3d).m_x))
Ändern Sie diese Codezeile wie folgt.
#define GETVECTOR3D(vec3d) (*reinterpret_cast<AcGeVector3d*>(&((vec3d)))
Methode 2
Bereitstellen einer INI-Datei. Hierzu erstellen Sie eine Datei mit dem folgenden Code.
[.NET Framework Debugging Control]AllowOptimize=0
INI-Datei problematisch Moduls identisch, nicht aber die Erweiterung DLL anstelle der INI-Erweiterung. Beispielsweise den Beispielcode im Abschnitt "Weitere Informationen" Dateinamen Sie die INI-Datei den Bug.ini. Legen Sie die Bug.ini-Datei im gleichen Verzeichnis wie die Datei Bug.dll.
Hinweis Der Nachteil dieser Methode ist die potenzielle Auswirkung auf die Leistung für Optimierungen. Wenn Sie Native Image Generator (Ngen.exe) verwenden, um das Modul vorkompilieren, gilt diese Methode nicht.
Methode 3
Zuweisen Sie selektiv die Option NoOptimization MethodImplOptions -Enumeration problematischen Methoden mithilfe der MethodImplAttribute -Klasse.
Hinweis Diese Methode deaktiviert Optimierungen des JIT-Compilers und Native Image Generator (Ngen.exe) auf pro-Methode. Wie viel die Leistung beeinträchtigt wird hängt, die Methode.
Status
Microsoft hat bestätigt, dass es sich um ein Problem bei den Microsoft-Produkten handelt, die im Abschnitt „Eigenschaften“ aufgeführt sind.
Weitere Informationen
Schritte zum Reproduzieren des Problems
-
Erstellen Sie eine C++-Anwendung, die auf.NET Framework 3.5 SP1.
-
CPP-Datei zum Projekt hinzufügen und fügen Sie folgenden Code in der Datei Bug.cpp dieser den Dateinamen der Datei Bug.cpp.
#using <mscorlib.dll>#include <stdlib.h>
class AcGeVector3d
{
double x, y, z;
public:
__forceinline AcGeVector3d(const AcGeVector3d& src): x(src.x),y(src.y),z(src.z)
{
}
__forceinline AcGeVector3d(double xx, double yy, double zz) : x(xx),y(yy),z(zz)
{
}
__forceinline AcGeVector3d operator / (double val) const
{
return AcGeVector3d (x/val, y/val, z/val);
}
};
#define GETVECTOR3D(vec3d) (*reinterpret_cast<AcGeVector3d*>(&((vec3d).m_x)))
namespace Geometry
{
[System::Runtime::InteropServices::StructLayout(System::Runtime::InteropServices::LayoutKind::Sequential)]
public value class Vector3d
{
internal:
double m_x, m_y, m_z;
Vector3d(const AcGeVector3d* obj)
{
GETVECTOR3D(*this) = *obj;
}
public:
Vector3d(double x, double y, double z):m_x(x),m_y(y), m_z(z) {}
Vector3d DivideBy(double value)
{
return Vector3d(&GETVECTOR3D(*this).operator /(value));
}
virtual System::String^ ToString() override
{
return System::String::Format("{0}, {1}, {2}", m_x, m_y, m_z);
}
};
} -
Führen Sie zum Erstellen der Datei Bug.cpp den folgenden Befehl ein:
CL/CLR/GL/O2 bug.cpp Link/dll /out:bug.dll
-
Erstellen Sie ein neues Microsoft Visual C#-Projekt als das Clientprojekt verwendet werden.
-
Dateinamen Sie die Datei den Test.cs, und fügen Sie folgenden Code in die Datei Test.cs.
using Geometry;namespace Test
{
class Tester
{
static void Main()
{
Vector3d v = new Vector3d(200, 200, 0);
v = v.DivideBy(150);
System.Console.WriteLine("{0}", v);
}
}
} -
Kompilieren Sie die Datei Test.cs führen Sie den folgenden Befehl ein:
csc /r:bug.dll test.cs
-
Führen Sie den folgenden Befehl, um die Einbettung des Manifests in die Datei Test.exe:
MT.exe - Nologo-manifest bug.dll.manifest-outputresource:test.exe;1
-
Führen Sie die Datei Test.exe.
Beachten Sie, dass das Ergebnis wie folgt:
1.33333333333333, 1.333333333333, 0Allerdings ist das erwartete Ergebnis wie folgt:
1.33333333333333, 0, 0
Referenzen
Um weitere Informationen zur Terminologie für Softwareupdates zu erhalten, klicken Sie auf die folgende Artikelnummer, um den Artikel der Microsoft Knowledge Base anzuzeigen:
824684 Erläuterung von der standardmäßigen Standardbegriffen bei Microsoft Softwareupdates