Este artigo descreve a 3088956 de rollup de correções que está disponível para o Microsoft .NET Framework 4.6. Para obter mais informações sobre os problemas que a correção do rollup de correções corrige, veja a secção "Problemas que este rollup de correções corrige".
Resolução
Uma correção suportada está agora disponível na Microsoft. No entanto, destina-se a corrigir apenas o problema descrito neste artigo. Aplique-o apenas a sistemas com este problema específico.Para corrigir este problema, contacte os Serviços de Suporte ao Cliente da Microsoft para obter a correção. Para obter uma lista completa dos números de telefone e informações dos Serviços de Suporte ao Cliente da Microsoft sobre os custos de suporte, visite o seguinte site da Microsoft:
http://support.microsoft.com/contactus/?ws=supportNota Em casos especiais, os custos normalmente incorridos para chamadas de suporte podem ser cancelados se um Suporte da Microsoft Professional determinar que uma atualização específica irá corrigir o seu problema. Os custos de suporte habituais serão aplicados a questões e problemas de suporte adicionais que não se qualificam para a atualização específica em questão.
Mais Informações
Pré-requisitos
Para aplicar esta correção, tem de ter o .NET Framework 4.6 instalado.
Requisito de reinício
Tem de reiniciar o computador depois de aplicar esta correção se estiverem a ser utilizados ficheiros afetados. Recomendamos que feche todas as aplicações baseadas em .NET Framework antes de aplicar esta correção.
Informações sobre substituição de correções
Este pacote de correções não substitui um pacote de correções previamente lançado.
Problemas que este rollup de correções corrige
Problema 1Se tiver um site ASP.NET em execução numa versão de 32 bits do .NET Framework versão 4.6 ou AMD64 da plataforma .NET Framework 4.6 com RyuJit desativado, poderá deparar-se com uma falha w3wp devido a ThreadAbortException não processado. Quando a falha ocorre, pode ver o seguinte registo no registo de eventos do Windows:
Ocorreu uma exceção não processada e o processo foi terminado.ID da Aplicação: [ApplicationID]ID do Processo: [ProcessID]Exceção: System.Threading.ThreadAbortExceptionMensagem: O thread estava a ser abortado.StackTrace: em System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, httpContext context)em System.Web.Hosting.PipelineRuntime.ProcessRequestNotificationHelper(IntPtr rootObjectsPointer, IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags)at System.Web.Hosting.PipelineRuntime.ProcessRequestNotification(IntPtr rootObjectsPointer, IntPtr nativeRequestContext, IntPtr moduleData, Int32 flags)
Problema 2Suponha que tem um cliente WCF a ligar ao serviço WCF com o Serviço de Encaminhamento WCF. Se o serviço final gerar uma exceção inesperada que não seja um tipo de FaultException ou as alterações de configuração, o Serviço de Encaminhamento wcF poderá não encaminhar pedidos subsequentes para o serviço final.Quando este problema ocorre, recebe a seguinte exceção:
System.ServiceModel.ProtocolException: este canal já não pode ser utilizado para enviar mensagens, uma vez que a sessão de saída foi fechada automaticamente devido a um encerramento iniciado pelo servidor. Desative o fecho automático ao definir DispatchRuntime.AutomaticInputSessionShutdown como falso ou considere modificar o protocolo de encerramento com o servidor remoto.
Informações de rastreio de pilha:em System.ServiceModel.Channels.ServiceChannel.PrepareCall(operação ProxyOperationRuntime, Booleano oneway, ProxyRpc& rpc)em System.ServiceModel.Channels.ServiceChannel.SendAsyncResult.Begin()em System.ServiceModel.Channels.ServiceChannel.BeginCall(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, TimeSpan timeout, AsyncCallback callback, Object asyncState)em System.ServiceModel.Channels.ServiceChannelProxy.InvokeBeginService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)em System.ServiceModel.Channels.ServiceChannelProxy.Invoke(mensagem IMessage)em System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Tipo int32)em System.ServiceModel.Routing.IRequestReplyRouter.BeginProcessRequest(Mensagem, chamada de retorno AsyncCallback, estado do objeto)em System.ServiceModel.Routing.ClientFactory.RequestReplyClient.OnBeginOperation(Mensagem, chamada de retorno AsyncCallback, Estado do objeto)em System.ServiceModel.Routing.ClientFactory.RoutingClientBase'1.OperationAsyncResult.CallOperation()em System.ServiceModel.Routing.ClientFactory.RoutingClientBase'1.OperationAsyncResult.. ctor(RoutingClientBase'1 principal, Message requestMessage, Transaction transaction, AsyncCallback callback, Object state)at System.ServiceModel.Routing.ClientFactory.RoutingClientBase'1.BeginOperation(Message message, Transaction transaction, AsyncCallback callback, Object state)at System.ServiceModel.Routing.ProcessRequestAsyncResult'1.StartProcessing()em System.ServiceModel.Routing.ProcessRequestAsyncResult'1..ctor(serviço RoutingService, Mensagem de mensagem, chamada de retorno AsyncCallback, Estado do objeto)em System.ServiceModel.Routing.RoutingService.BeginProcessRequest[TContract](Mensagem de mensagem, chamada de retorno AsyncCallback, estado do objeto)em System.ServiceModel.RoutingService.System.ServiceModel.Routing.IRequestReplyRouter.BeginProcessRequest(Mensagem, chamada de retorno AsyncCallback, Estado do objeto)em AsyncInvokeBeginBeginProcessRequest(Object , Object[] , AsyncCallback , Object )at System.ServiceModel.Dispatcher.AsyncMethodInvoker.InvokeBegin(Object instance, Object[] inputs, AsyncCallback callback, Object state) Issue 3This is an update to support the new Georgian Lari symbol. O país da Geórgia introduziu um novo símbolo de moeda para os Lari, mas o nome da moeda não é alterado. O novo símbolo de moeda também foi adicionado à norma Unicode. Esta atualização garante que o símbolo de moeda correto é apresentado pela .NET Framework com base nas definições de região do sistema.Problema 4Se ocorrer uma coleção Gen2 durante as chamadas Parallel.ForEach, poderá deparar-se com bloqueios prolongados após instalar o Visual Studio 2015 ou o .NET Framework 4.6 sem o Visual Studio.Resolução: esta atualização atualiza o Recoletor de Memória ao resolver o congelamento do sistema causado por este problema.Problema 5Depois de instalar o .NET Framework 4.6, os métodos DateTime.Parse e Date.TryParse não funcionam corretamente. Este problema pode ocorrer com as seguintes definições de cultura:
-
fi-FI
-
nb-NO
-
nb-SJ
-
sr-Cyrl-XK
-
sr-Latn-ME
-
sr-Latn-RS
-
sr-Latn-XK
Resolução: esta atualização permite que DateTime.Parse e Date.TryParse funcionem corretamente em culturas que estão a utilizar o mesmo separador de data e hora.Problema 6Depois de instalar o .NET Framework 4.6, o .NET Framework 4.6 utiliza um novo compilador de 64 bits denominado RyuJIT. Em alguns casos, o novo compilador gera código incorreto que causa falhas ou comportamentos imprevisíveis. Resolução: esta atualização corrige muitos problemas no compilador RyuJIT. Se a aplicação continuar a comportar-se imprevisivelmente após a instalação desta atualização, veja orientações de resolução de problemas detalhadas adicionais.Passos adicionais: se for determinado que o RyuJIT pode estar envolvido no seu problema ao seguir os passos de resolução de problemas na ligação, registe o problema em http://connect.microsoft.com. Inclua o máximo de detalhes possível no relatório e também código para reproduzir o problema.