Aanmelden met Microsoft
Meld u aan of maak een account.
Hallo,
Selecteer een ander account.
U hebt meerdere accounts
Kies het account waarmee u zich wilt aanmelden.

Dit hotfix-combinatiepakket toepassen, gaat u naar het volgende knowledge base-artikel en de juiste hotfix-combinatiepakket downloaden:

2925383 2925383 is een hotfixcombinatiepakket beschikbaar voor .NET Framework 4.5.1 in Windows

Inleiding

In dit artikel beschreven hotfix-combinatiepakket 2908385 die beschikbaar is voor Microsoft .NET Framework 4.5.1. Zie de sectie 'Meer informatie' voor meer informatie over het probleem dat de hotfix wordt opgelost.

Dit hotfix-combinatiepakket worden de volgende besturingssystemen:

  • Windows 8

  • Windows Server 2012


Meer informatie

Informatie over de hotfix

Een ondersteunde hotfix is nu beschikbaar bij Microsoft. Het is echter bedoeld om alleen het probleem te verhelpen dat in dit artikel wordt beschreven. Pas deze alleen toe op systemen waarop dit specifieke probleem zich voordoet.

Voor dit probleem kunt u contact opnemen met Microsoft Customer Support Services om de hotfix te verkrijgen. Een volledige lijst met telefoonnummers van Microsoft Customer Support Services en informatie over kosten van ondersteuning vindt u op de volgende Microsoft-website:

http://support.microsoft.com/contactus/?ws=supportOpmerking In speciale gevallen kunnen kosten die normaal aan ondersteuningsoproepen verbonden zijn, worden geannuleerd als een medewerker van Microsoft productondersteuning van mening is dat een specifieke update de oplossing van uw probleem is. De normale ondersteuningskosten blijven gelden voor extra ondersteuningsvragen die niet in aanmerking voor de specifieke update in kwestie komen.

Vereisten

Deze hotfix moet u .NET Framework 4.5.1 geïnstalleerd hebben.

Opnieuw opstarten

U moet de computer opnieuw opstarten nadat u deze hotfix als de bestanden waarin dit probleem optreedt worden gebruikt. Wij raden aan dat u alle .NET Framework-toepassingen sluiten voordat u deze hotfix toepast.

Informatie over het vervangen van hotfixes

Dit hotfix-pakket vervangt een eerder uitgebrachte hotfix-pakket.


Problemen die met dit hotfix-combinatiepakket worden opgelost

Probleem 1

Symptoms

Stel dat u de methode Application.DoEvents() van de handler voor de gebeurtenis ValueChanged van een NumericUpDown aanroepen. U gebruikt bijvoorbeeld de volgende code:private void numericUpDown1_ValueChanged(object sender, EventArgs e){
for (int i = 0; i < 10; i++)
{
Application.DoEvents();
Thread.Sleep(10);
}
}
Wanneer de omhoog of omlaag pijlknop enkele seconden wordt ingedrukt, maakt u het besturingselement een timer voor het genereren van herhaalde wordt verhoogd of verlaagd. In Application.DoEvents de maatstreepjes timer opnieuw verwerkt. Hierdoor wordt een nieuwe ValueChanged -gebeurtenis. Vervolgens opnieuw in de timer tick gebeurtenis-handler. Wanneer de muisknop wordt losgelaten, de timer in de handler aan de onderkant van de stack wordt vernietigd, maar vervolgens opnieuw wordt hergebruikt terwijl de stack wordt door de andere handlers worden afgewikkeld. Dit veroorzaakt een uitzondering null-verwijzing en een crash.



Tijdelijke oplossing

U kunt dit probleem omzeilen, gebruikt u BeginInvoke asynchroon Application.DoEvents() aanroepen nadat de timergebeurtenis wordt verwerkt. De volgende klasse bijvoorbeeld gebruiken om het standaardgedrag te overschrijven:public class MyNumericUpDown : System.Windows.Forms.NumericUpDown{
public NumericUpDown() : base()
{
}
protected override void OnValueChanged(EventArgs e)
{
// run the handler as a separate event to prevent re-entrance to prevent a NullRef when hitting.
if (IsHandleCreated)
BeginInvoke(new Action(() => base.OnValueChanged(e)));
else
base.OnValueChanged(e);
}
}
Opmerking In het algemeen raadzaam niet een berichtenlus (Application.DoEvents) te voeren vanaf een message handler (ValueChanged is verhoogd van de handler voor de Timer.OnTick ), omdat dit tot een stackoverloop leiden kan. Bijvoorbeeld het bereik van het besturingselement NumericUpDown is groot en de gebruiker houdt de knop met pijl omlaag voor een lange tijd. BeginInvoke gebruiken om te voorkomen dat de stackoverloop. Deze hotfix verhelpt dit probleem niet.

Probleem 2

Symptomen

Kopiëren van opgemaakte tekst uit een lange XPS-document kan enkele minuten duren, afhankelijk van de positie van de tekst in het document en kan leiden tot de toepassing te bevriezen.

Cause

Dit probleem treedt op omdat sommige opmaak aangiften moeten scannen van het document van het begin tot de gewenste selectie. Deze verklaringen zijn zeldzaam (ze afkomstig zijn uit aangepaste elementen die een kenmerk van TextElementEditingBehaviorAttribute die niet is gemarkeerd als IsTypographicOnly).

De logica wordt in deze hotfix is opgenomen om te voorkomen dat de dure scan wanneer geen dergelijke aangiften worden weergegeven in de gewenste selectie gewijzigd.

Probleem 3

Symptomen

Een TextBlock Windows Presentation Foundation (WPF) weergegeven een of meer tekens aan het einde van de tekst niet. Dit probleem treedt op wanneer de volgende voorwaarden voldaan wordt:

  • TextWrapping of TextTrimming is ingeschakeld.

  • Opvulling gelijk is aan nul of TextFormattingMode is 'Weergeven'.

  • Breedte niet wordt ingesteld of is ingesteld op 'Auto'.

  • De FontFamily, FontSize en bepaalde tekens in de tekst leiden tot een ongunstig breedte.

Cause

Dit probleem treedt op vanwege een numerieke onnauwkeurigheden (een afrondingsfouten) die optreden kunnen tijdens het berekenen van de breedte van de tekst, de breedte tussen de interne coördinatenstelsels accounting voor celopvulling en uitlijnen van de tekst op pixelgrenzen voor weergavemodus te converteren.

Bescherming tegen dit soort onnauwkeurigheden is toegevoegd aan de berekeningen, om ervoor te zorgen dat de tekens die worden weergegeven, worden weergegeven.

Probleem 4

Vastmaken objecten kunnen leiden tot te veel geheugenfragmentatie heap, veroorzaakt door een afname van de prestaties. Deze oplossing biedt meer efficiënte hergebruik van geheugenbuffers, waarbij geheugenfragmentatie heap wordt geminimaliseerd.

Probleem 5

Een toepassing kan soms een uitzondering van de schending van toegang tijdens AppDomain wordt afgesloten na een achtergrond garbagecollection bewerking optreden.

Probleem 6

De diagnostische hulpprogramma's die via API profileren IL instrumentation kunnen leiden tot de volgende niet-verwerkte uitzondering gemaakt door de common language runtime (CLR):

0X80131401 ' SECURITY_E_INCOMPATIBLE_SHARE =. Deze assembly laadt, zou een andere machtigingenset van andere exemplaren produceren.


Bovendien loopt het proces vast. Dit probleem treedt alleen op wanneer u diagnostische hulpmiddelen.

Probleem 7

Wanneer u de Windows Communication Foundation (WCF) 4.5 HttpMessageHandler extensibility point (ook bekend als de WCF HTTP pijpleiding), kan de koptekst van de WWW-verificatie kan niet worden ingesteld op HttpRequestMessage of HttpResponseMessage. Dit komt omdat het HttpMessageHandler uitbreidbaarheid punt maakt gebruik van een ander mechanisme voor het verwerken van kopteksten.

Nadat u deze hotfix hebt toegepast, de twee mechanismen om toe te voegen kop worden gebracht met pariteit en één moeten kunnen opnieuw toe te voegen WWW-verificatieheaders.

Probleem 8

Een uitzondering NullReferenceException wordt veroorzaakt door de methode SqlInternalConnectionTds.BreakConnection . Deze hotfix lost het probleem dat tot de uitzondering NullReferenceException leidt .

Probleem 9

Symptomen

Stel dat u beschikt over een WCF-toepassing die gebruikmaakt van de klasse BinaryMessageEncoder en het coderingsprogramma een record op basis van UTF-8 tekst per [MC-NBFX gebruikt]. Of wordt uitgegaan van een WCF-toepassing die gebruikmaakt van de methode System.ServiceModel.Channels.Message.CreateBufferedCopy . Een bericht wordt verwerkt met tekens in het bereik van U + 10000 voor U + 10FFFF (inclusief) die worden weergegeven in UTF-8 als een reeks van 4 bytes. In dit geval kan het gecodeerde binaire bericht verloren gaan en ziet u het volgende foutbericht:

System.ArgumentException: The output char buffer is too small to contain the decoded characters, encoding 'Unicode (UTF-8)' fallback 'System.Text.DecoderExceptionFallback'.Parameter name: chars
at System.Text.Encoding.ThrowCharsOverflow()
at System.Text.Encoding.ThrowCharsOverflow(DecoderNLS decoder, Boolean nothingDecoded)
at System.Text.UTF8Encoding.GetChars(Byte* bytes, Int32 byteCount, Char* chars, Int32 charCount, DecoderNLS baseDecoder)
at System.Text.DecoderNLS.GetChars(Byte* bytes, Int32 byteCount, Char* chars, Int32 charCount, Boolean flush)
at System.Text.DecoderNLS.GetChars(Byte[] bytes, Int32 byteIndex, Int32 byteCount, Char[] chars, Int32 charIndex, Boolean flush)
at System.Text.DecoderNLS.GetChars(Byte[] bytes, Int32 byteIndex, Int32 byteCount, Char[] chars, Int32 charIndex)
at System.Xml.ValueHandle.TryReadChars(Char[] chars, Int32 offset, Int32 count, Int32& actual)
at System.Xml.XmlBaseReader.ReadValueChunk(Char[] chars, Int32 offset, Int32 count)
at System.Xml.XmlBinaryWriter.WriteTextNode(XmlDictionaryReader reader, Boolean attribute)
at System.Xml.XmlDictionaryWriter.WriteNode(XmlDictionaryReader reader, Boolean defattr)
at System.ServiceModel.Channels.ReceivedMessage.OnWriteBodyContents(XmlDictionaryWriter writer)
at System.ServiceModel.Channels.Message.OnWriteMessage(XmlDictionaryWriter writer)
at System.ServiceModel.Channels.Message.OnCreateBufferedCopy(Int32 maxBufferSize, XmlDictionaryReaderQuotas quotas)
at System.ServiceModel.Channels.StreamedMessage.OnCreateBufferedCopy(Int32 maxBufferSize)
at System.ServiceModel.Channels.Message.CreateBufferedCopy(Int32 maxBufferSize)
at ConsoleApplication1.BufferRequestChannel.WrappingRequestContext.BufferMessage()

Als dit probleem zich voordoet, de client een time-out optreedt zonder reactie als de toepassing WCF zelfgehoste. Als de toepassing WCF web host (ASP.NET), ontvangt de client een serverfout 500.

Oorzaak

Dit probleem treedt op vanwege een interne implementatie details die soms onvoldoende ruimte wordt toegewezen bij 4-byte UTF-8-tekenreeksen worden gedecodeerd.

Oplossing

Dit probleem oplossen door de hotfix toepassen. Nadat u de hotfix hebt toegepast, wacht de WCF-toepassing op de volgende
Read -methode om te decoderen van de tekens als er onvoldoende ruimte in de uitvoerbuffer decoderen multibyte-Unicode-tekens.

Meer hulp nodig?

Meer opties?

Verken abonnementsvoordelen, blader door trainingscursussen, leer hoe u uw apparaat kunt beveiligen en meer.

Community's helpen u vragen te stellen en te beantwoorden, feedback te geven en te leren van experts met uitgebreide kennis.

Was deze informatie nuttig?

Hoe tevreden bent u met de taalkwaliteit?
Wat heeft uw ervaring beïnvloed?
Als u op Verzenden klikt, wordt uw feedback gebruikt om producten en services van Microsoft te verbeteren. Uw IT-beheerder kan deze gegevens verzamelen. Privacyverklaring.

Hartelijk dank voor uw feedback.

×