Преминаване към основното съдържание
Поддръжка
Влизане с Microsoft
Влезте или създайте акаунт.
Здравейте,
Изберете друг акаунт.
Имате няколко акаунта
Изберете акаунта, с който искате да влезете.

Въведение

В тази статия спешна корекция сборни 2996568 за Microsoft .NET Framework 4.5, .NET Framework 4.5.1 и .NET Framework 4.5.2. За повече информация относно корекция Сборен пакет за актуализация решава проблеми вижте раздела "Допълнителна информация".

Този пакет с актуална корекция е налична за следните операционни системи:

  • Windows Server 2008 R2 SP1

  • Windows 7 SP1

  • Windows Server 2008 SP2

  • Windows Vista SP2


Решение

Вече се предлага от Microsoft предоставя поддържана актуална корекция. Но тя е предназначена да коригира само проблема, тази статия. Прилагайте корекцията само към системи, изпитващи този конкретен проблем.

За да разрешите този проблем, се обърнете към услугите за поддръжка на клиенти на Microsoft да получите актуалната корекция. За пълен списък на телефонните номера на отдела за поддръжка на Microsoft и информация за цените на поддръжката посетете следния уеб сайт на Microsoft:

http://support.microsoft.com/contactus/?ws=supportЗабележка: При специални случаи таксите, които са за свързани с поддръжката обаждания могат да бъдат отменени, ако специалист по поддръжката на Microsoft прецени, че конкретна актуализация може да разреши проблема. Обичайните такси за поддръжката ще важат за допълнителни въпроси и проблеми, които не спадат към съответната актуализация.

Допълнителна информация

Необходими условия:

За да приложите тази актуална корекция, трябва да имате .NET Framework 4.5, .NET Framework 4.5.1 или 4.5.2 инсталиран .NET Framework.

Изискване за рестартиране

Трябва да рестартирате компютъра, след като приложите тази актуална корекция, ако всички засегнати файлове се използват. Препоръчително е да затворите всички приложения, базирани на .NET Framework, преди да приложите тази актуална корекция.

Информация за заместване на актуалната корекция

Тази актуална корекция не замества издадените пакета.


















Този пакет с актуални корекции решава проблеми

Проблем 1

Тази актуална корекция решава следните две резби проблеми в System.IO.Packaging , когато използвате .NET Framework 4.5, .NET Framework 4.5.1 или .NET Framework 4.5.2.

  • Блокиране може да възникне, когато използвате големи пакети на отделни теми. System.IO.Packaging използва IsolatedStorage пакети, които са по-големи от 10 мегабайта (МБ). Когато две или повече нишки използват големи пакети, блокиране може да възникне дори ако пакетите са независими. Блокиране включва две теми. Един чака в IsolatedStorageFile.Lock а другата очаква друг метод на класа IsoloatedStorageFile . Този проблем е разрешен чрез добавяне на синхронизация System.IO.Packaging за избягване на проблема в IsolatedStorageFile.

  • Изключения може да възникне, когато извличате PackageProperties от пакети, които са отворени на отделни теми, дори ако пакетите са независими. Най-често срещаните повикване стека, възникващи от това са както следва:System.Xml.XmlException: Unrecognized root element in Core Properties part. Line 2, position 2. atMS.Internal.IO.Packaging.PartBasedPackageProperties.ParseCorePropertyPart(PackagePart part) at
    System.IO.Packaging.Package.get_PackageProperties()
    System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values. Parameter name: id atMS.Internal.IO.Packaging.PartBasedPackageProperties.ParseCorePropertyPart(PackagePart part) at
    System.IO.Packaging.Package.get_PackageProperties()
    Този проблем се причинява от спор на вътрешен споделен ресурс и е разрешен чрез пакет за всеки екземпляр от ресурса.


Проблем 2

Приложение на Windows Presentation Foundation (WPF) могат да използват голям обем памет, когато получава много заявки за UIAutomation услуга. Паметта принадлежи към обекти от System.Threading имена. Това включва System.Threading.CancellationTokenSource, System.Threading.TimerQueueTimer, System.Threading.Timerи няколко други свързани класове.

Това са обекти, които са разпределени от името на WPF при WPF получава искане за UIAutomation дейност. Накрая са пуснати до времето за изчакване на заявката изтече (обикновено 3 минути). Ако исканията пристигат бързо, приложението изглежда е изтичане на памет или използва повече памет от това, което е разумно (колкото е 500 MB).

Този проблем е разрешен чрез освобождаване на обекти, когато искането, вместо да чакате за изчакване срок.

Проблем 3

В WPF приложение когато въвеждате текст с помощта на корейски въвеждане редактор (IME), свойството текст може да се редактира разгъващ се списък не се променя правилно в някои случаи.

Този проблем може да имат различни симптоми и това зависи от приложението (или автор) е конфигурацията на разгъващ се списък. Например:

  • След като въведете и раздела далеч (или преместите фокуса към друг контрол), текст на разгъващ се списък се връща празен низ или стойност, която е имала преди въвеждането.

  • Функцията TextSearch на разгъващ се списък на неправилно поведение. Не съвпада префикс, който е въведен или тя съпоставя несвързани елемент.

Този проблем е решен чрез изменение на логиката за времето на корейски, различен от други IME IME.

Проблем 4

След като използвате връзка за операция плъзгане и пускане в WPF приложение, следващото докосване жест се игнорира.

Този проблем е разрешен чрез вътрешно състояние на манипулатор на въвеждане докосване при операцията за плъзгане и пускане. По този начин тя изчислява позицията на следващия докосване жест правилно.

Проблем 5

Ново AuthenticationManager изпълнение може да бъде разрешен по желание да получат значителни производителността при работа с потребителски IAuthenticationModules.

Забележка: Основните рискове за сигурността се появи, ако кодът не е проектиран да бъде съвместими. Промяната на основните поведение се намира на PreAuthenticate и удостоверяване методи. Преди това е гарантира, че кода е последователно изпълнение (заключване на глобалния бе). В новия изпълнение заключване не се приема и код на клиента трябва да гарантира сигурността нишка.
Освен това с ново изпълнение, размера на кеш паметта PrefixLookup може да се контролира чрез системния регистър.

Следните ключове на системния регистър може да се използва за разрешаване и конфигуриране на максималната дължина на PrefixLookup:

  • Общо конфигуриране[HKEY_LOCAL_MACHINE\SOFTWARE[\Wow6432Node]\Microsoft\.NETFramework\v4.0.30319]"System.Net.AuthenticationManager.HighPerformance"=dword:00000001
    "System.Net.AuthenticationManager.PrefixLookupMaxCount"=dword:00010000

  • Конфигуриране на локални приложения[HKEY_LOCAL_MACHINE\SOFTWARE[\Wow6432Node]\Microsoft\.NETFramework\v4.0.30319\System.Net.AuthenticationManager.HighPerformance]"c:\myapp\myapp.exe"=dword:00000001
    [HKEY_LOCAL_MACHINE\SOFTWARE[\Wow6432Node]\Microsoft\.NETFramework\v4.0.30319\System.Net.AuthenticationManager.PrefixLookupMaxCount]
    "c:\myapp\myapp.exe"=dword:00010000

Глобални настройки имат приоритет пред настройките за локално приложение. Настройки на глобални и локални приложения могат да бъдат смесени. PrefixLookupMaxCount няма да бъдат засегнати, ако настройката на високоефективна глобално или локално приложение е DWORD 1.

Въпрос 6

Да предположим, че изпълнявате приложение, което се основава на .NET Framework 4.5, .NET Framework 4.5.1 или .NET Framework 4.5.2. Приложението води до възникване на изключение в управлявана метод, който е наречен от основните код и е преминал интерфейс COM с препратка. В тази ситуация може да блокира приложението.

Например: приложение, което се записва в VB6 извиква C# DLL. Ако приложението и DLL се събират в release режим, когато хвърлено в C# код, възниква нарушаване на достъпа и приложението се срива.

Брой 7

Когато проекти поток XAML отнеме повече време от времето по подразбиране лизинг (пет минути) на отдалечени обекти, които са дефинирани от задачи за изграждане на XAML, получавате съобщение за грешка, подобно на следното:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.XAML.targets(193,5): грешка XC1000: XC1020: компилация грешка в XAML MSBuild задача: "обект" / cc8d6dcf_823f_4ce0_aaad_fb1d3f85e42b/mzr1is8dfgy6yqtpnhegu6pt_4.rem "е изключена или не съществува на сървъра."

След като приложите тази актуална корекция, можете да зададете собствен лизинг време (в минути) чрез задаване на променливата на средата, която се нарича XamlBuildTaskRemotingLeaseLifetimeInMinutes.

За да зададете променливата на средата във файла на проекта за MSBuild, трябва да съдържа следната информация във вашия файл с проект:<Project ...> <UsingTask TaskName="MySetEnv" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll" >
<ParameterGroup>
<Name Required="true" />
<Value Required="false" />
</ParameterGroup>
<Task>
<Code Type="Fragment" Language="cs">System.Environment.SetEnvironmentVariable(Name, Value);</Code>
</Task>
</UsingTask>
...
...
<Target Name="BeforeBuild">
<MySetEnv Name="XamlBuildTaskRemotingLeaseLifetimeInMinutes" Value="1440" />
</Target>
<Target Name="AfterBuild">
<MySetEnv Name="XamlBuildTaskRemotingLeaseLifetimeInMinutes" Value="" />
</Target>
</Project>
TaskName в този пример е MySetEnv. Това може да се настрои произволен низ, който е валиден за имената на задачите. Този пример задава лизинг време 1,440 минути (един ден) преди изграждането на проекта и се определя на нула след building. Ако има няколко проекти, която изисква да се удължи времето на лизинг, всеки проект се нуждае от тази конфигурация.

Брой 8

Когато използвате AJAX обратното публикуване в страница, понякога обратното публикуване е пренасочване към друг URL. Можете да получите RedirectLocation в HttpModule чрез HttpContext.Items["System.Web.UI.PageRequestManager:AsyncPostBackRedirectLocation"].

Нуждаете ли се от още помощ?

Искате ли още опции?

Разгледайте ползите от абонамента, прегледайте курсовете за обучение, научете как да защитите устройството си и още.

Общностите ви помагат да задавате и отговаряте на въпроси, да давате обратна връзка и да получавате информация от експерти с богати знания.

Беше ли полезна тази информация?

Доколко сте доволни от качеството на езика?
Какво е повлияло на вашия потребителски опит?
Като натиснете „Подаване“, вашата обратна връзка ще се използва за подобряване на продуктите и услугите на Microsoft. Вашият ИТ администратор ще може да събира тези данни. Декларация за поверителност.

Благодарим ви за обратната връзка!

×