Kumulativní oprava hotfix 2783808 pro 4.5 rozhraní .NET Framework v systému Windows 7, Windows 7 s aktualizací SP1, Windows 2008 R2, Windows 2008 R2 SP1, Windows 2008 SP2 a Windows Vista s aktualizací SP2

ID článku: 2783808 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Úvod

Tento článek popisuje kumulativní oprava hotfix 2783808 pro rozhraní Microsoft .NET Framework 4.5 Service Pack 2 (SP2) v systému Windows 7, aktualizace Service Pack 1 (SP1) pro systém Windows 7, Windows 2008 R2, Windows 2008 R2 SP1, Windows 2008 SP2 a Windows Vista s aktualizací SP2. Tato kumulativní oprava hotfix je k dispozici a opravuje několik problémů v rozhraní.NET Framework 4.5. Další informace o problémech, které je oprava hotfix řeší naleznete v části "Problémy, že tato kumulativní oprava řeší".

Další informace

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.

Chcete-li vyřešit tento problém, obraťte se na technickou podporu společnosti Microsoft, kde příslušné opravy hotfix získat. Úplný seznam telefonních čísel služeb technické podpory společnosti Microsoft a informace o cenách technické podpory naleznete na následujícím webu společnosti Microsoft:
http://support.microsoft.com/contactus/?ws=support
Poznámka: Ve zvláštních případech mohou být účtované poplatky podpory stornovány, pokud pracovník technické podpory společnosti Microsoft určí, že váš problém vyřeší konkrétní aktualizace. Obvyklé náklady na podporu použije dalších otázek a problémů, které nejsou vyřešeny v dané konkrétní aktualizaci.

Požadavky

Chcete-li nainstalovat tuto opravu hotfix, musíte mít rozhraní.NET Framework 4.5 SP1 nainstalována v systému Windows 7, Windows 7 s aktualizací SP1, Windows 2008 R2, Windows 2008 R2 SP1, Windows 2008 SP2 nebo Windows Vista s aktualizací SP2.

Požadavek na restartování

Po instalaci této opravy hotfix, pokud jsou používány všechny zasažené soubory, musí restartujte počítač. Doporučujeme ukončit všechny aplikace rozhraní.NET Framework před instalací této opravy hotfix.

Informace o nahrazení opravy hotfix

Tento balíček oprav hotfix nenahrazuje žádné dříve vydané opravy hotfix balíčku.

Informace o souboru

Zmenšit tento obrázekZvětšit tento obrázek
Globální verze této opravy hotfix má atributy souborů (nebo novější), jsou uvedeny v následující tabulce. Kalendářní data a časy těchto souborů jsou uvedeny koordinovaný světový čas (UTC). Při zobrazení informací o souboru je převeden na místní čas. Rozdíl mezi místním časem a UTC časem Časové pásmo Karta v Datum a čas Chcete-li zobrazit položky v Ovládacích panelech.
Pro všechny podporované verze x 86 systému Windows 7, Windows 7 s aktualizací SP1, Windows 2008 SP2 a Windows Vista s aktualizací SP2
Zmenšit tuto tabulkuRozšířit tuto tabulku
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
CLR.dll4.0.30319.190476,876,60828. Listopadu 201201: 28x86
Souboru Mscordacwks.dll4.0.30319.190471,299,44028. Listopadu 201201: 28x86
Mscordbi.dll4.0.30319.190471,096,65628. Listopadu 201201: 28x86
Mscorlib.dll4.0.30319.190475,171,15228. Listopadu 201202: 39x86
Knihovně PresentationCore.dll4.0.30319.190473,224,56028. Listopadu 201202: 39x86
Knihovně PresentationFramework.dll4.0.30319.190476,187,01628. Listopadu 201202: 39x86
Sos.dll4.0.30319.19047746,94428. Listopadu 201201: 28x86
System.dll4.0.30319.190473,449,28828. Listopadu 201202: 39x86
System.IdentityModel.dll4.0.30319.190471,084,92828. Listopadu 201202: 39x86
System.Printing.dll4.0.30319.19047342,00028. Listopadu 201202: 39x86
System.Runtime.Serialization.dll4.0.30319.190471,051,69628. Listopadu 201202: 39x86
System.ServiceModel.Channels.dll4.0.30319.19047158,76828. Listopadu 201202: 39x86
System.ServiceModel.Discovery.dll4.0.30319.19047312,36028. Listopadu 201202: 39x86
System.ServiceModel.dll4.0.30319.190476,368,78428. Listopadu 201202: 39x86
Knihovně WindowsBase.dll4.0.30319.190471,237,48828. Listopadu 201202: 39x86
Pro všechny podporované verze x 64 systému Windows 7, Windows 7 s aktualizací SP1, Windows 2008 R2, Windows 2008 R2 SP1, Windows 2008 SP2 a Windows Vista s aktualizací SP2
Zmenšit tuto tabulkuRozšířit tuto tabulku
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
CLR.dll4.0.30319.190479,804,22428. Listopadu 201200: 33x64
CLR.dll4.0.30319.190476,876,60828. Listopadu 201201: 28x86
Souboru Mscordacwks.dll4.0.30319.190471,742,81628. Listopadu 201200: 33x64
Souboru Mscordacwks.dll4.0.30319.190471,299,44028. Listopadu 201201: 28x86
Mscordbi.dll4.0.30319.190471,497,04028. Listopadu 201200: 33x64
Mscordbi.dll4.0.30319.190471,096,65628. Listopadu 201201: 28x86
Mscorlib.dll4.0.30319.190475,120,46428. Listopadu 201200: 33x64
Mscorlib.dll4.0.30319.190475,171,15228. Listopadu 201202: 39x86
Knihovně PresentationCore.dll4.0.30319.190473,207,68028. Listopadu 201200: 33x64
Knihovně PresentationCore.dll4.0.30319.190473,224,56028. Listopadu 201202: 39x86
Knihovně PresentationFramework.dll4.0.30319.190476,187,01628. Listopadu 201202: 39x86
Sos.dll4.0.30319.19047785,34428. Listopadu 201200: 33x64
Sos.dll4.0.30319.19047746,94428. Listopadu 201201: 28x86
System.dll4.0.30319.190473,449,28828. Listopadu 201202: 39x86
System.IdentityModel.dll4.0.30319.190471,084,92828. Listopadu 201202: 39x86
System.Printing.dll4.0.30319.19047342,01628. Listopadu 201200: 33x64
System.Printing.dll4.0.30319.19047342,00028. Listopadu 201202: 39x86
System.Runtime.Serialization.dll4.0.30319.190471,051,69628. Listopadu 201202: 39x86
System.ServiceModel.Channels.dll4.0.30319.19047158,76828. Listopadu 201202: 39x86
System.ServiceModel.Discovery.dll4.0.30319.19047312,36028. Listopadu 201202: 39x86
System.ServiceModel.dll4.0.30319.190476,368,78428. Listopadu 201202: 39x86
Knihovně WindowsBase.dll4.0.30319.190471,237,48828. Listopadu 201202: 39x86
Zmenšit tento obrázekZvětšit tento obrázek

Problémy, které tato kumulativní oprava řeší

Společný jazykový modul runtime Problémy (CLR)

Problém 1

Pokud aplikace .NET Framework 4.5 se pokusí spustit zázemí pro uvolňování v počítači, který má málo paměti, může dojít k zablokování.

Problém 2

Metodu PerformanceCounterCategory.GetCategories nelze vrátit seznam výkonu kategorií čítačů v některých operačních systémech, které používají jiné než anglické národní prostředí. Navíc pokud aplikace rozhraní.NET Framework spustí kód, který se podobá následující výčet kategorií čítačů výkonu, je vrácena žádná hodnota:
PerformanceCounterCategory[] categories;
categories = PerformanceCounterCategory.GetCategories();
Console.WriteLine(categories.Length + " categories are registered on this computer");
Po instalaci opravy hotfix musíte přidat následující nový konfigurační klíč LocalizedPerfCounter v konfiguračním souboru aplikace pro vaši aplikaci rozhraní.NET Framework:
<configuration>
    <appSettings>
        <add key="LocalizedPerfCounter" value="true" />
    </appSettings>
</configuration>

Problémy s Windows Communication Foundation (WCF)

Problém 1

Předpokládejme, že je aplikace, která používá třídu System.Xml.XmlDictionaryReader WCF přečíst UTF-8 kódování znaků Unicode. Když aplikace čte určité znaky sady Unicode, které spadají do určité oblasti, může být pomalé čtení procesu.

Poznámka:Další informace o třídě System.Xml.XmlDictionaryReader přejděte na následující web služby MSDN:
Obecné informace o třídě XmlDictionaryReader


Problém 2

V počítačích se systémem .NET Framework 4.5 nebo dřívější verze aplikace WCF nelze získat přístup k klientský certifikát je-li vlastnost HttpsTransportBindingElement.RequireClientCertificate nastavena na hodnotu FALSE. Pokud se aplikace pokusí o přístup ke klientským certifikátům, WCF pracuje v jednom z následujících režimů:
  • povolit nebo zamítnout
  • nevyžadují a bez ověření
V takovém případě nelze vytvořit aplikaci pro který certifikát je kontrola povolující (nelze například vytvořit aplikaci, která používá režim nevyžadují certifikáty , ale ověřit, je-li k dispozici ). Tato oprava hotfix umožňuje aplikaci přidejte nastavení na koncový bod, který poskytuje klientský certifikát pro aplikace WCF v případě, že klient poskytuje certifikát. Certifikát je však nepovinné. Připojení nebude odmítnuta, pokud certifikát není k dispozici. Web může pokusit použít ověřování pomocí formulářů, pro ověření pokus o přístup na server a udělit další oprávnění, pokud přítomnost klientský certifikát je předkládán serveru.

Vyvinout aplikaci, vytvořit EndpointBehavior chování a pak přidejte chování do vazba koncového bodu. Například spustíte následující kód k vytvoření a přidání chování:
class ValidateOptionalClientCertificateBehavior : IEndpointBehavior
        {
            private const string ValidateOptionalClientCertificates = " wcf:HttpTransport:ValidateOptionalClientCertificates";
 
            public void AddBindingParameters(ServiceEndpoint endpoint, BindingParameterCollection bindingParameters)
            {
                IDictionary<string, object> endpointSettings = bindingParameters.Find<IDictionary<string, object>>();
 
                if (endpointSettings == null)
                {
                    endpointSettings = new Dictionary<string, object>(StringComparer.OrdinalIgnoreCase);
                    bindingParameters.Add(endpointSettings);
                }
 
                if (endpointSettings.ContainsKey(ValidateOptionalClientCertificates))
                {
                    endpointSettings[ValidateOptionalClientCertificates] = true;
                }
                else
                {
                    endpointSettings.Add(ValidateOptionalClientCertificates, true);
                }
            }
 
            public void ApplyClientBehavior(ServiceEndpoint endpoint, ClientRuntime clientRuntime)
            {
            }
 
            public void ApplyDispatchBehavior(ServiceEndpoint endpoint, EndpointDispatcher endpointDispatcher)
            {
            }
 
            public void Validate(ServiceEndpoint endpoint)
            {
                if (endpoint.ListenUri.Scheme != "https")
                {
                    throw new InvalidOperationException();
                }
            }
        }
    }
Alternativně můžete přidat následující nastavení koncového bodu bindingParameters kolekce:
string ValidateOptionalClientCertificatesString = "wcf:HttpTransport:ValidateOptionalClientCertificates";
            Dictionary<string, object> endpointSettings = new Dictionary<string, object>();
            endpointSettings.Add(ValidateOptionalClientCertificatesString, true);
            bindingParameters.Add(endpointSettings);


Problém 3

Spustíte-li službu WCF, který podporuje WS-Discovery přes protokol UDP (User Datagram) na serveru, můžete zaznamenat jeden nebo více z následujících problémů:
  • Se zvyšuje využití procesoru neočekávaně na serveru.
  • Vícesměrové vysílání je větší, než bylo očekáváno.
  • Mnoho zpráv SOAP poruchy jsou pozorovány v síti, kde je rozhraní .NET Framework 4.5 nasazen na všechny nebo pouze podsadu počítačů.
Tato oprava hotfix zabrání vracených z koncového bodu UDP Pokud vícesměrového vysílání zpráv WS-Discovery od koncového bodu, který není nakonfigurován pro WS-Discovery chybu SOAP zprávy.

Poznámka:Tyto problémy mohou nastat i v případě, že služba nebyla kompilována na cílové rozhraní .NET Framework 4.5. K těmto problémům může dojít v prostředí nebo v síti, ve kterém je k dispozici na jeden nebo více koncových bodů 4.5 rozhraní .NET Framework.

Problémy systému Windows Presentation Foundation (WPF)


Problém 1

A.NET Framework 4.5 systémem WPF služeb umožňuje tisknout na tiskárně rozhraní grafických zařízení (GDI) v operačním systému dojde k nízký výkon tisku. K tomuto problému dochází, pokud jsou splněny následující podmínky:
  • Používá operační systém, který je hostitelem služby jiné než anglické národní prostředí.
  • Operační systém má jeden nainstalované následující produkty:
    • WPF verze 4.0
    • WPF verze 4.5
    • WPF verze 3.5 a opravy hotfix, která je popsána v následujícím článku znalostní báze Microsoft Knowledge Base (nebo upgrade opravu hotfix, která obsahuje tuto opravu hotfix):
      980294 Znaky písma čárového kódu jsou vytištěny v písmu Wingdings v dokumentu XPS, který je vytvořen pomocí rozhraní.NET Framework 3.0
  • Při tisku dokumentu, který má mnoho bloků textu.
K tomuto problému dochází, protože vyhledávací operace proběhne při každém tisku proces volá do bloku text, který chcete najít písmo rozhraní GDI, který se používá k zobrazení textu. Využití prostředků operace vyhledávání je vyšší použitím opravy hotfix, která je distribuována v KB980294, WPF verze 4.0 a WPF verze 4.5. Navíc využití prostředků vyhledávací operace dominuje celkové využití prostředků proces tisku. Tato oprava hotfix řeší známé problémy s logikou, která ukládá výsledky operace vyhledávání. Po nainstalování opravy hotfix, využití prostředků vyhledávací operace způsobí jedno načtení písem GDI místo, které se vyskytnou jednou za blok textu.

Problém 2

Zvažte následující scénář:
  • Máte jiné aplikace založené na rozhraní .NET Framework 4.5, který obsahuje upravitelné ovládací prvek WPF. Ovládací prvek používá Editor IME (Input Method Editor).
  • Zadání textu do ovládacího prvku.
  • Ovládací prvek můžete změnit text, který je vstup. Následují příklady tohoto chování:
    • Předpokládá se, že jste na textové pole ovládací prvek má vlastnosti Text s vazbou na data. Aktivační událost update zdroj pro TextBox.Text vazbu vlastnosti je nastavena na PropertyChanged. Jako vstupní text, je odeslána na vlastnost základní datové položky, která je popsána v cestě vazby. Text lze navíc nahrazen jiným řetězcem, samotné položky dat, nebo převaděče, které jsou zahrnuty ve vazbě.
    • Předpokládejme, že máte upravitelné seznamem s povoleným nastavením hledání textu. Při zadávání textu, ovládací prvek pole se seznamem se pokusí vyhledat text v seznamu dostupných možností. Ovládací prvek zjistí-li možnost, která začíná s textem, text nahrazuje úplný text odpovídající možnost.
  • Povolit IME odeslání zprávy WM_IME_CHAR aplikacím WPF, když ovládací prvek je ve stavu "text byl změněn pomocí ovládacího prvku".

    Poznámka:Přesné pořadí znaků, který způsobuje, že tato zpráva se značně liší mezi různými editory IME. Některé editory IME Neodesílat zprávu vůbec.
V tomto scénáři může selhat aplikace založené na rozhraní .NET Framework 4.5 spolu s výjimka System.InvalidOperationException výjimku.

Chcete-li tento problém vyřešit použitím opravy hotfix. Tato oprava hotfix řeší také konkrétní problém, ve kterém Visual Studio 2012, dojde k chybě při úpravě Team Foundation Server (TFS) pracovní položka spolu s IME Engkoo pchin-jin, povolena. Zde je podrobný popis tohoto problému:

Předpokládejme, zadá text do pole "Přiděleno" pracovní položky v aplikaci Visual Studio 2012. Když pak stisknete Enter po zadání textu, editor IME Engkoo odešle zprávu WM_IME_CHAR. Proto se zhroutí Visual Studio 2012.

Poznámka:Vložení textu doostatní pole TFS pracovní položka může být způsoben také tento problém.
Poznámka:K tomuto problému také dochází v WPF 4.0 nebo starší verzi WPF. Oprava se však vztahuje pouze na WPF verze 4.5.
Problém 3

Zvažte následující scénář:
  • Máte aplikace WPF, který deklaruje vlastnosti vázaného na data. Vlastnost vázaný na data obsahuje vazbu, která má složitou cestu. Vazba má například následující cestu:
    {Vazby Path=A.B.C.D}
  • Vytvořit datový model, který vyvolává PropertyChanged oznámení pro některé součásti cesty na pracovní podproces. Například pracovní podproces vyvolává oznámení o změně vlastnosti C.

    Poznámky
    • Pracovní podproces může být libovolného vlákna, která se liší od vlákno uživatelského rozhraní.
    • Vlákno uživatelského rozhraní je vlákna, která byla prohlášena za vazby.
  • Před vlákno uživatelského rozhraní zpracovává oznámení PropertyChanged, datový model vyvolává další oznámení PropertyChanged pro starší součásti cesty. Můžete mít například podproces vyvolává oznámení o změně vlastnosti A.

    Poznámka:Druhé oznámení PropertyChanged může dojít z libovolného vlákna. Může se jednat o vlákno uživatelského rozhraní.
V tomto případě je ignorována druhé oznámení. Kromě toho dojde ke ztrátě dat. Například vlastnost D získává původní hodnoty vlastnosti A. Očekávaný výsledek je však tuto vlastnost, kterou D získá hodnotu změněné vlastnosti A.

Poznámka: Tento problém může ovlivnit také starší verze než verze 4.5 WPF. Oprava se však vztahuje pouze na WPF verze 4.5.


Problém 4

Zvažte následující scénář:
  • Máte-li aplikace WPF, která spustí kód deklarovat ovládací prvek TextBlock a kód podobá následující:
    <TextBlock TextTrimming="CharacterEllipses" TextWrapping="NoWrap">
  • Vstupní text, který má dlouhý řetězec, který je 9 600 znaků nebo déle.
  • Spuštění aplikace v počítači, který je spuštěn WPF verze 4.5.
V tomto případě zobrazí ovládací prvek TextBlock několik řádků textu a každý řádek textu končí se třemi tečkami. Například je počet řádků, které jsou zobrazeny n/ 9600.

Poznámka:n je zástupný symbol pro délku původní text. Předpokládaným výsledkem je, že ovládací prvek TextBlock zobrazí jeden řádek textu, který končí elipsy.

Vlastnosti

ID článku: 2783808 - Poslední aktualizace: 19. prosince 2012 - Revize: 1.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft .NET Framework 4.5
Klíčová slova: 
kbqfe kbhotfixserver kbfix kbexpertiseadvanced kbsurveynew kbmt KB2783808 KbMtcs
Strojově přeložený článek
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: 2783808

Dejte nám zpětnou vazbu