Este artigo descreve o pacote cumulativo de hotfixes 3009678 que está disponível para o Microsoft.NET Framework 4.5.2, o.NET Framework 4.5.1 e o.NET Framework 4.5. Para obter mais informações sobre os problemas que o conjunto de correcções resolve, consulte a seção "problemas que este conjunto de correcções resolve".
O pacote off-line pode ser usado em situações onde o instalador da web não pode ser usado devido à falta de conectividade com a Internet. Sempre que possível, a Microsoft recomenda que usar o instalador da Web em vez do pacote off-line para os requisitos de largura de banda e a eficiência ideais.
Esta atualização inclui os seguintes pacotes individuais para diferentes produtos e plataformas.
Descrição |
Número da KB |
---|---|
O.NET Framework 4.5 e 4.5.1 4.5.2 no Windows Vista SP2 e Windows Server 2008 R2 SP1, Windows 7 SP1 e Windows Server 2008 SP2 |
3011114 |
O.NET Framework 4.5 e 4.5.1 4.5.2 no Windows 8 e Windows Server 2012 |
3011112 |
O.NET Framework 4.5.1 e 4.5.2 em Windows 8.1 e do Windows Server 2012 R2 |
3011110 |
Resolução
Um hotfix suportado está disponível agora na Microsoft. No entanto, destina-se a corrigir somente o problema descrito neste artigo. Aplique-o somente aos sistemas que apresentarem esse problema específico.
Para resolver esse problema, contate o Atendimento Microsoft para obter o hotfix. Para obter uma lista completa dos números de telefone do Atendimento Microsoft e informações sobre custos de suporte, visite o seguinte site da Microsoft:
http://support.microsoft.com/contactus/?ws=supportObservação: em alguns casos, as taxas cobradas para chamadas de suporte podem ser canceladas caso um profissional de Suporte da Microsoft determine que uma atualização específica resolverá o problema. Os custos normais de suporte serão aplicados para questões de suporte adicionais e problemas que não se qualificam à atualização específica em questão.
Mais informações
Pré-requisitos:
Para aplicar esse hotfix, você deve ter o.NET Framework 4.5.2, o.NET Framework 4.5.1 ou o 4.5 do.NET Framework instalado.
Requisitos de reinicialização:
Você precisa reiniciar o computador após aplicar este hotfix se quaisquer arquivos afetados estão sendo usados. Recomendamos que você feche todos os aplicativos baseados em.NET Framework antes de aplicar esse hotfix.
Informações de substituição do hotfix:
Este hotfix não substitui um pacote de hotfix lançado anteriormente.
Problemas que este conjunto de correcções resolve
Problema 1
No.NET Framework 4.5, navegação de teclado em um TreeView do WPF não funciona corretamente quando um TreeViewItem contém um elemento de controle como um botão, caixa de seleçãoou Caixa de texto. Pressionar a seta para cima ou seta para baixo pode alterar o foco para o elemento errado, ou não pode alterar o foco em todos os.
O hotfix resolve esse problema para que a seta para cima e seta para baixo sempre alterar o foco para o elemento correto.
Problema 2
Quando você chamar GlyphRun.InkBoundingBox() ou qualquer um de seus dependentes, como FormattedText.Extent em um aplicativo WPF, os valores de retorno são um pouco maiores no.NET Framework 4.5 que no.NET Framework 4.0. O.NET Framework 4.0 tinha um bug que ocorreu, às vezes, no qual o texto não foi desenhado (dependendo da fonte, tamanho da fonte e caracteres específicos). O erro foi corrigido no.NET Framework 4.5, aumentando a caixa delimitadora de um pouco de tinta.
Esse hotfix adiciona um sinalizador de configuração para cancelar a correção. Um aplicativo que optar pelo limite terá os mesmos valores de retorno como o.NET Framework 4.0, mas também pode encontrar o erro "desaparecendo texto".
Para cancelar a correção, adicione a seguinte chave à seção appSettings do arquivo de configuração do aplicativo:<add key="IncludeAllInkInBoundingBox" value="false"/> Problema 3
Considere o seguinte cenário:
-
Você tem um projeto da web do ASP.NET que páginas da web implementa callbacks de clientes através de programação sem postbacks.
-
Ação do formulário é uma URL de nome de domínio internacional (por exemplo, nome do domínio da URL contém caracteres Unicode).
-
O cliente está usando o Internet Explorer 10 ou uma versão anterior do Internet Explorer.
Nesse cenário, a página da Web do cliente não funciona. Por exemplo, nada acontece quando você clica em um botão que deve para disparar um retorno de chamada.
Problema 4
Suponha que você crie uma classe System.Workflow.Activities.StateMachineWorkflowActivity juntamente com uma propriedade de atividades que especifica uma lista de ActivitiesCollection . A lista contém muitas atividades (por exemplo, 300 ou mais atividades) que incluem o estado e as atividades de estado não.
Nessa situação, as transições para atividades de estado que estão próximos ao fim da lista ActivitiesCollection levar muito mais tempo para terminar de transições para atividades de estado estiver próximo ao início da lista.
Esse hotfix remove desnecessários traversais de lista de ActivitiesCollection quando ele procura o destino atividade State por nome durante uma transição de estado. Portanto, menos tempo é necessário para fazer a transição para atividades de estado que estão próximos ao fim da lista ActivitiesCollection .
Problema 5
Suponha que os contadores de desempenho do WCF estão habilitados. No entanto, alguns nomes de instância são reduzidas porque eles são mais de 64 caracteres. Além disso, os dois nomes de instância reduzido podem ser o mesmo. Nesse cenário, o WCF não cria as instâncias do contador conforme o esperado.
Para habilitar esse hotfix, adicione a seguinte linha para appSettings no seu arquivo de configuração:<appSettings><add key=" wcf:ensureUniquePerformanceCounterInstanceNames " value="true" />
</appSettings>
Depois que essa configuração é habilitada, o WCF irá detectar se dois nomes de instância em conflito e adicionará um hash hexadecimal de oito dígitos para o fim de um dos nomes. Isso permite que as duas instâncias criado com êxito.
Problema 6
Suponha que você use o WCF como um cliente de nível intermediário para um serviço da web ou site para se comunicar com um serviço de back-end com balanceamento de carga via HTTP. Além disso, um dos hosts de back-end está em um estado de falha que retorna respostas HTTP com um código de status de "500".
Nessa situação, a conexão com o host de back-end com falha persiste no pool de conexões do WCF ChannelFactory porque ela retorna respostas HTTP válidas e faz com que uma alta taxa de solicitações com falha. Não há nenhum mecanismo disponível para remover uma conexão com um host que falhou que pode levar à falha de solicitações de front-end.
Para habilitar esse hotfix, adicione a seguinte linha para appSettings no seu arquivo de configuração: <appSettings> <add key="wcf:httpTransportBinding:useUniqueConnectionPoolPerFactory" value="true"/>
</appSettings>
Depois que esse hotfix estiver ativado, cada instância de ChannelFactory criado que usa o transporte HTTP terá um pool separado de conexões. Isso permite que os desenvolvedores particionar suas conexões em grupos separados por instanciar vários objetos ChannelFactory . Assim, para descartar uma conexão com um host que falhou, fechando a instância ChannelFactory associada com a conexão com o host que falhou. Ao fechar uma instância ChannelFactory , as conexões do pool não são fechadas imediatamente porque eles são controlados pelo comportamento de pooling da classe ServicePointManager . É importante definir um tempo limite de ociosidade de padrão baixo se muitos objetos ChannelFactory estão sendo criados e fechada para evitar uma situação na qual muitas conexões ociosas são pendente de fechamento.
Problema 7
Suponha que você deseja oferecer suporte a vários downloads simultâneos ou carregamentos a um serviço WCF que expõe um ponto de extremidade WebHttpBinding . Transferências de conteúdo de dados grandes, usando o modo contínuo (em vez do modo buffer) fará com que o serviço para problemas de desempenho independentemente um DispatcherSynchronizationBehavior é adicionado.
Depois de aplicar esse hotfix, o WCF irá usar processamento assíncrono que aumenta muito o desempenho de vários carregamentos e downloads simultâneos.
Esse hotfix é habilitado quando a propriedade AsynchronousSendEnabled da DispatcherSynchronizationBehavior é definida como true. Para desativá-lo, remova o dispatcherSynchronizationBehaviorou definir explicitamente a propriedade AsynchronousSendEnabled como false:<system.ServiceModel> <behaviors>
<endpointBehaviors>
<behavior name="MyEndpointBehavior">
<dispatcherSynchronization asynchronousSendEnabled="false" maxPendingReceives="5" />
</behavior>
</endpointBehaviors>
</behaviors>
</system.ServiceModel>
Problema 8
Suponha que você aplicar a atualização de fuso horário russo setembro de 2014 (atualize 2998527) em seu computador. Quando você tiver um aplicativo que usa a classe do Microsoft.NET Framework e TimeZoneInfo , o aplicativo pode calcular tempo incorretamente. Consulte 3012229 de atualização para obter detalhes adicionais.
Este hotfix corrige as pesquisas de deslocamento de fuso horário base.
Problema 9
Suponha que você tenha um aplicativo WPF que abre uma janela na janela principal. Quando você redimensiona a segunda janela, o aplicativo falha e lança uma exceção de ponteiro nulo.