Úvod
Rýchla oprava popísaná v tomto článku sa odstraňuje nasledujúce problémy v Microsoft Visual Studio 2010.
Problém 1
Keď spustíte aplikáciu, ktorá má slučky v zdrojovom kóde sa vyskytlo neočakávané správanie. Tento problém sa vyskytuje, ak zdrojový kód zostaví globálna optimalizácia (/ Og) povolené.
Problém 2
Predstavte si nasledujúcu situáciu:
-
Máte Visual C++ projektu, ktorý obsahuje súbor Atlcomcli.h.
-
Zadáte/j kompilátor možnosť definovať_CHAR_UNSIGNEDmakro projektu.
-
Projekt zostaviť.
V tomto prípade sa zobrazí jedno z nasledujúcich chybových hlásení:
-
chyba C2338: nemožno spracovať CVarTypeInfo < znak > zapnutý príznak/j alebo _CHAR_UNSIGNED
-
chyba C2338: nemožno spracovať CVarTypeInfo < char * > zapnutý príznak/j alebo _CHAR_UNSIGNED
Problém 3
Porušenie prístupu sa vyskytuje, keď spustíte aplikáciu Visual C++, postavenú na x86-bitové verzie systému Windows. Tento problém sa vyskytuje, keď aplikácia výraz strom, ktorý má dve vstupné argumenty pole typu.
Príčina
Príčinou problému 1
Tento problém sa vyskytuje, pretože nesprávne slučky optimalizácia vykonáva. To spôsobí nesprávny kód generácie.
Príčinou problému 2
Tento problém sa vyskytuje, pretože statických tvrdení v súbore Atlcomcli.h sú nastavené na možnosť/j a CHAR_UNSIGNED makro nesprávne.
Príčinou problému 3
Tento problém sa vyskytuje, pretože argumentov tlačiť pokyny sú zmiešané. Preto nesprávne argumenty prechádzajú tlačiť pokyny.
Ďalšie informácie
Informácie o rýchlej oprave
Rýchla oprava je k dispozícii od spoločnosti Microsoft. Je však určená iba na vyriešenie problému, ktorý je popísaný v tomto článku. Použite ju iba v počítačoch s týmto konkrétnym problémom. Môže, že táto rýchla oprava bude ďalej testovaná. Ak vám nespôsobuje tento problém, odporúčame vám počkať na ďalší Visual Studio 2010, ktorá obsahuje túto rýchlu opravu.
Ak chcete tento problém vyriešiť okamžite, obráťte sa na služby technickej podpory spoločnosti Microsoft a požiadajte o rýchlu opravu. Úplný zoznam telefónnych čísiel služby podpory zákazníkov spoločnosti Microsoft a informácie o poplatkoch za poskytnutie technickej podpory nájdete na nasledujúcej webovej lokalite spoločnosti Microsoft:
http://support.microsoft.com/contactus/?ws=supportPoznámka: V niektorých zvláštnych prípadoch sa môžu zrušiť poplatky za telefonickú podporu, ak pracovník služieb technickej podpory spoločnosti Microsoft usúdi, že daný problém sa vyrieši nainštalovaním určitej aktualizácie. Ďalšie otázky a žiadosti o technickú podporu, ktoré sa netýkajú tejto špecifickej aktualizácie, podliehajú bežným sadzbám za poskytovanie technickej podpory.
Požiadavky
Microsoft Visual Studio 2010 nainštalovaný chcete použiť túto rýchlu opravu, musíte mať.
Požiadavka na reštartovanie
Nemáte na reštartovanie počítača po nainštalovaní rýchlej opravy, ak používa žiadny súbor.
Informácie o nahradení rýchlej opravy
Táto rýchla oprava nenahrádza žiadne iné rýchle opravy.
Informácie o súboroch
Anglická verzia tejto rýchlej opravy má atribúty súborov (alebo novšie atribúty) uvedené v nasledujúcej tabuľke. Dátumy a čas jednotlivých súborov sú uvedené vo formáte koordinovaného svetového času (UTC). Pri zobrazení informácií o súbore sa dátumy a čas prevedú na miestny čas. Ak chcete vyhľadať rozdiely medzi časom UTC a miestnym časom, použite
Časové pásmo
karta
Dátum a čas
položky v ovládacom paneli.
Názov súboru |
Verzia súboru |
Veľkosť súboru |
Dátum |
Čas |
Platforma |
---|---|---|---|---|---|
C2.dll |
16.0.30319.314 |
2,510,144 |
30-May-2010 |
20:48 |
x86 |
C2.dll |
16.0.30319.314 |
2,588,480 |
30-May-2010 |
20:48 |
x86 |
C2.dll |
16.0.30319.314 |
2,630,976 |
30-May-2010 |
20:48 |
x86 |
C2.dll |
16.0.30319.314 |
2,977,600 |
30-May-2010 |
20:48 |
x64 |
C2.dll |
16.0.30319.314 |
7,351,616 |
30-May-2010 |
20:48 |
IA-64 |
Alternatívne riešenie
Riešenie problému 1
Tento problém obísť, vypnite globálna optimalizácia. Ďalšie informácie o vypnutí globálna optimalizácia, po kliknutí na nasledovné číslo článku publikovaného v databáze Microsoft Knowledge Base:
216181 opraviť: nesprávny kód s /Og optimalizácia
Riešenie problému 2
Tento problém vyriešite pomocou pragma smernice Atlcomcli.h súboru.
#pragma push_macro("ATLSTATIC_ASSERT")
#undef ATLSTATIC_ASSERT
#define ATLSTATIC_ASSERT(x,y)
#include <atlcomcli.h>
#undef ATLSTATIC_ASSERT
#pragma pop_macro("ATLSTATIC_ASSERT")