Microsoft Visual Studio 2008 verzi tohoto článku naleznete v tématu 980263.
Příznaky
Jde o takovouto situaci:
-
Vytvořte projekt Visual C++ v aplikaci Microsoft Visual Studio 2010.
-
Soubor v projektu inicializuje úzký řetězcové literály. Tyto řetězcové literály obsahují asijské znaky a není předponou s písmenem "L."
-
Soubor byl uložen pomocí kódování UTF-8.
V tomto scénáři při kompilaci projektu řetězcové literály jsou chybně interpretován pomocí kompilátoru. Navíc setkáte s jedním z následujících problémů:
-
Pokud soubor obsahuje značku pořadí bytů (BOM), operace kompilace proběhla úspěšně. Nicméně řetězcové literály stále nesprávně zobrazují generované aplikací. Navíc může zobrazit následující chybová zpráva při kompilaci projektu:
Upozornění C4566: Znak reprezentován univerzální znak názvu "xx" nelze reprezentovat v aktuální znakové stránce.
-
Kompilace operace se nezdaří. Navíc může zobrazit následující chybová zpráva při kompilaci projektu:
C2078 Chyba: Příliš mnoho inicializátory
-
Kompilace operace se nezdaří. Navíc může zobrazit následující chybová zpráva při kompilaci projektu:
C4129 upozornění: 'znak': Nerozpoznaná řídicí sekvence znaků.
Příčina
K tomuto problému dochází, protože kompilátor předpokládá, že literály v souboru mohla být vykládána jako vedoucí bajt MBCS kódování namísto jako jednobajtové kódování Unicode. Z důvodu tohoto problému kompilátor nesprávně přeloží soubor.
Řešení
Chcete-li vyřešit tento problém, použití této opravy hotfix do počítače, ve kterém při kompilaci projektu. Potom uložte soubor s značka pořadí bajtů a pak přidejte následující direktivy "pragma" těsně před řetězcové literály ve zdrojovém souboru:
#pragma execution_character_set("utf-8")
Poznámka Této směrnice "pragma" Nastaví jednotku překladu pro zdrojový soubor do této "pragma" směrnice nahrazuje jiným "pragma" směrnice.
Další informace o této opravě hotfix
Informace o opravě hotfix
Podporovaná oprava hotfix je nyní k dispozici od společnosti Microsoft. Je však určena opravit pouze problém popsaný v tomto článku. Použijte ji pouze u systémů, ve kterých dochází k tomuto konkrétnímu problému. Tato oprava hotfix může být dále testována. Proto pokud jste závažně tento problém, doporučujeme počkat na další, který obsahuje tuto opravu hotfix. Chcete-li tento problém vyřešit okamžitě, obraťte se na technickou podporu společnosti Microsoft získat opravu hotfix. Úplný seznam telefonních čísel služeb podpory zákazníků společnosti Microsoft a informace o cenách podpory naleznete na následujícím webu společnosti Microsoft:
http://support.microsoft.com/contactus/?ws=supportPoznámka Ve zvláštních případech nemusí být poplatky za poskytnutí telefonické podpory účtovány, pokud pracovník služeb podpory společnosti Microsoft potvrdí, že konkrétní aktualizace odstraní váš problém. Další dotazy a žádosti o podporu, které se netýkají této zvláštní opravy, podléhají běžným sazbám za poskytnutí podpory.
Požadavky
Musíte mít Microsoft Visual Studio 2010 instalaci Chcete-li nainstalovat tuto opravu hotfix.
Informace o restartování počítače
Po instalaci této opravy hotfix nemusíte restartovat počítač.
Informace o souborech
Anglická verze této opravy hotfix má následující (nebo pozdější) atributy souborů. Data a časy jednotlivých souborů jsou uvedeny ve formátu UTC (Coordinated Universal Time). Při zobrazení informací o souboru jsou převedeny na místní čas. Rozdíl mezi místním časem a časem UTC naleznete na kartě Časové pásmo v položce Datum a čas v okně Ovládací panely.
Název souboru |
File version |
File size |
Date |
Time |
Platform |
---|---|---|---|---|---|
C1.dll |
16.0.30319.351 |
658,240 |
23-Aug-2010 |
06:45 |
x86 |
C1.dll |
16.0.30319.351 |
723,776 |
23-Aug-2010 |
06:45 |
x86 |
C1.dll |
16.0.30319.351 |
899,400 |
23-Aug-2010 |
06:45 |
x86 |
C1xx.dll |
16.0.30319.351 |
2,286,920 |
23-Aug-2010 |
06:45 |
x86 |
C1xx.dll |
16.0.30319.351 |
2,428,232 |
23-Aug-2010 |
06:45 |
x86 |
C1xx.dll |
16.0.30319.351 |
2,659,664 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
201,032 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
202,568 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
219,976 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
221,000 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
290,632 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
291,656 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
292,680 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
293,704 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
408,392 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
408,904 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
450,376 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
460,104 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
460,616 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
478,024 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
478,536 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
483,656 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
484,168 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
486,728 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
487,240 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
491,848 |
23-Aug-2010 |
06:45 |
x86 |
Clui.dll |
16.0.30319.351 |
492,360 |
23-Aug-2010 |
06:45 |
x86 |
Stav
Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.