Teď jste offline a čekáte, až se znova připojí internet.

Oprava: Neočekávané chování při spuštění generované aplikací Visual Studio 2008 Service Pack 1, který volá funkci setjmp nebo longjmp ve zdrojovém souboru

Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.

Projděte si také anglickou verzi článku:2498381
Příznaky
Zvažte následující scénář:
  • Povolit (možnost globální optimalizace/Og) povolením na jednu z následujících možností:
    • / O1 
    • / O2 
    • /Ox 
  • Microsoft Visual C++ zdrojový soubor vytvoříte pomocí aplikace Microsoft Visual Studio 2008 Service Pack 1 (SP1).
  • Volání zdrojových souborůsetjmpfunkcelongjmpfunkce, nebo obě funkce.

V tomto scénáři může kompilátor pomocí stejné odsazení zásobníku uložit různé místní proměnné. Proto neočekávané chování dochází při spuštění generované aplikací.
Příčina
K tomuto problému dochází, protože Optimalizátor nezodpovídá za setjmpfunkce nebolongjmpfunkce. To způsobí, že optimalizace nesprávně vypočítat dobu životnosti lokální proměnné. Při změně jedné proměnné může neočekávaně změnit jiné proměnné.
Řešení

Informace o opravě hotfix

Podporovaná oprava hotfix je k dispozici od společnosti Microsoft. Tato oprava hotfix je však určena pouze problém popsaný v tomto článku. Použití této opravy hotfix pouze u systémů, ve kterých dochází k problému popsaného v tomto článku. Tato oprava hotfix může být dále testována. Proto pokud není přísně tento problém, doporučujeme počkat na další aktualizaci softwaru, která bude tuto opravu hotfix obsahovat.

Chcete-li odstranit tento problém okamžitě, obraťte se na technickou podporu společnosti Microsoft, kde získat opravu hotfix. Úplný seznam telefonních čísel služeb zákazníkům společnosti Microsoft a podpoře nebo vytvořit zvláštní požadavek na službu navštivte následující web společnosti Microsoft: Poznámka: Ve zvláštních případech mohou být stornovány poplatky za podpory účtovány, pokud pracovník technické podpory společnosti Microsoft zjistí, že konkrétní aktualizace vyřeší váš problém. Výdaje na technickou podporu se bude u dalších otázek a problémů, které nemohou být zařazeny v dané konkrétní aktualizaci.

Chcete-li stáhnout tuto opravu hotfix z Galerie Microsoft Developer Network (MSDN) kód, navštivte následující web společnosti Microsoft:
Poznámka: Galerie kódu MSDN zobrazí jazyky, pro které je oprava hotfix je k dispozici. Pokud není uveden jazyk, je to, protože zdroj stránky galerie kód není k dispozici pro daný jazyk.

Nebo můžete tuto opravu hotfix můžete stáhnout z následujícího webu Microsoft Connect:

Požadavky

Chcete-li nainstalovat tuto opravu hotfix, musí mít aplikace Microsoft Visual Studio 2008 Service Pack 1 nainstalována.

Informace o restartování

Není nutné restartovat počítač po instalaci této opravy hotfix, pokud byly zastaveny všechny instance aplikace Visual Studio.

Informace o nahrazení opravy hotfix

Tato oprava hotfix nenahrazuje žádné dříve vydané opravy hotfix.

Informace o souboru

Globální verze této opravy hotfix nainstaluje soubory, které mají atributy, které jsou uvedeny v následujících tabulkách. Kalendářní data a časy jednotlivých souborů jsou uvedeny v koordinovaný světový čas (UTC). Kalendářní data a časy těchto souborů v místním počítači jsou zobrazeny podle místního času společně podle aktuálního letní čas (DST). Navíc data a časy mohou změnit při provádění některých operací se soubory.
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
C2.dll15.0.30729.61472,283,84025. Února-201101: 25x 86
C2.dll15.0.30729.61472,362,68825. Února-201101: 25x 86
C2.dll15.0.30729.61472,493,24825. Února-201101: 25x 86
C2.dll15.0.30729.61473,018,04825. Února-201101: 25x 64
C2.dll15.0.30729.61477,263,04025. Února-201101: 25IA-64
Program Link.exe9.0.30729.61471,055,56025. Února-201101: 25x 64
Program Link.exe9.0.30729.61472,135,36825. Února-201101: 25IA-64
Program Link.exe9.0.30729.6147800,58425. Února-201101: 25x 86



Jak potíže obejít
Chcete-li tento problém vyřešit, inicializujte místní proměnné v rané fázi funkce tak, aby kompilátor vědom životnost proměnné.
Prohlášení
Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části "Platí pro".
Další informace
Další informace o terminologii aktualizace softwaru klepněte na následující číslo článku databáze Microsoft Knowledge Base:
824684 Popis standardní terminologie používané při popisu aktualizací softwaru společnosti Microsoft

Upozornění: Tento článek je přeložený automaticky

Vlastnosti

ID článku: 2498381 - Poslední kontrola: 04/21/2011 03:07:00 - Revize: 2.0

  • kbqfe kbhotfixserver kbfix kbexpertiseinter kbsurveynew kbbug kbmt KB2498381 KbMtcs
Váš názor
y>arAutoFirePV = 1; var varClickTracking = 1; var varCustomerTracking = 1; var Route = "76500"; var Ctrl = ""; document.write(" y>/html>-es-ve">Venezuela - Español
mp;t=">0&did=1&t=">id=1&t=">pt" async=""> var varAutoFirePV = 1; var varClickTracking = 1; var varCustomerTracking = 1; var Route = "76500"; var Ctrl = ""; document.write(" >>ow.location.protocol) + "//c.microsoft.com/ms.js'><\/script>"); &t=">>