1. Requisitos de Sistema para Instalar o .NET Framework 3.0
2. .NET Framework 3.0: Problemas de Instalação Conhecidos
3. Passos de Resolução de Problemas para Erros de Transferência
4. Problemas Conhecidos do Windows Communication Foundation
5. Problemas Conhecidos do Windows Workflow Foundation 6. Problemas Conhecidos da Arquitectura de Apresentação do Windows
Processador | Requisitos mínimos:
Recomendado:
|
Sistema Operativo | O .NET Framework 3.0 pode ser instalado em qualquer um dos sistemas que se segue:
*O Windows Vista é fornecido com o .NET Framework 3.0. Não é necessário um pacote de instalação em separado. Os pacotes do .NET Framework 3.0 autónomos não são suportados no Vista. |
RAM | Requisitos mínimos:
Recomendado:
|
Disco Rígido | Poderão ser necessários até 500 MB de espaço disponível em disco. |
Unidade de CD ou DVD | Não é necessária. |
Monitor | Requisitos mínimos:
Recomendado:
|
Rato | Não é necessário |
Quando inicia o programa de instalação do .NET Framework 3.0, a localização de instalação predefinida é a unidade de sistema, que corresponde à unidade que arranca o sistema. Certifique-se de que a quantidade de espaço necessário (até 500 MB) está disponível na unidade do sistema.
A transferência e instalação do .NET Framework 3.0 falha de forma intermitente.
Para resolver este problema
Execute novamente o dotnetfx3setup.exe a partir do Web site e tente novamente a transferência. Clique aqui para obter mais informações sobre a resolução de problemas relacionados com erros de transferência.
- ou -
Instale o pacote de redistribuição completo dotnetfx3.exe (x86) ou dotnetfx3_x64.exe (x64). Pode encontrar estes pacotes de redistribuição na localização de transferência do .NET Framework 3.0.
Se a configuração tiver de ser reiniciada e a aplicação antivírus estiver definida para limpar o directório Temp no arranque, os ficheiros de configuração necessários serão eliminados e a configuração vai falhar com um erro de programa não localizado.
Para resolver este problema
Antes de executar o programa de configuração do .NET Framework 3.0 , altere a configuração das aplicações antivírus para não limparem a pasta Temp no arranque ou reinício. Consulte a documentação antivírus para obter os passos necessários para realizar este procedimento.
Se tiver outros processos em execução quando iniciar o Modo de Manutenção, tal como software de análise antivírus, estes processos podem tornar a configuração significativamente mais lenta e dar a sensação de que ocorreu uma falha na configuração.
Para resolver este problema
Tenha paciência. Não existe uma solução para este problema. Não ocorreu uma falha na configuração.
Poderá obter o erro "Desinstale o Windows Workflow Foundation" quando instalar o .NET Framework 3.0 , mas não existe uma entrada em Adicionar/Remover Programas para Windows Workflow Foundation que permita desinstalar o produto.
Para resolver este problema
Execute a ferramenta de desinstalação em: http://www.microsoft.com/downloads/details.aspx?FamilyId=AAE7FC63-D405-4E13-909F-E85AA9E66146
No Windows XP SP2 e Windows 2003 SP1, se tiver uma versão localizada do MSXML6 anteriormente instalada, a instalação do .NET Framework 3.0 vai substituir a versão localizada do MXSML6 pela versão em inglês.
Para resolver este problema
Reinstale a versão localizada do MSXML6 depois de instalar o .NET Framework 3.0 .
O Windows Vista é fornecido com o .NET Framework 3.0. Não é necessário um pacote de instalação em separado. Os pacotes do .NET Framework 3.0 autónomos não são suportados no Vista.
Esta secção descreve problemas que podem ocorrer se tiver instalado anteriormente uma versão de pré-lançamento (CTP e Beta) do .NET Framework 3.0 e pretender removê-la para actualizar para a versão RTM.
Executar a Ferramenta de Desinstalação
A Ferramenta de Desinstalação do .NET Framework 3.0 está disponível em http://www.microsoft.com/downloads/details.aspx?FamilyId=AAE7FC63-D405-4E13-909F-E85AA9E66146. Esta ferramenta resolve vários problemas de desinstalação e é a medida mais correcta a tomar na tentativa de resolução de problemas de desinstalação/reinstalação. Pode encontrar detalhes sobre a utilização correcta da ferramenta na página de transferência.
Se não conseguir executar a ferramenta ou se não resolver o seu problema, consulte a secção Problemas Conhecidos e Resoluções abaixo para obter possíveis soluções.
Nota: Estes problemas de instalação ocorrem apenas se tiver instalada uma versão de pré-lançamento do .NET Framework 3.0 no sistema antes de instalar a versão RTM. Os problemas que provocam estes comportamentos foram abordados em recentes edições de pré-lançamento do .NET Framework 3.0.
Problemas Conhecidos e Resoluções
2.7.1 O "Serviço de Identidade Digital da Microsoft" (idsvc) Não É Eliminado na Desinstalação
No momento da desinstalação, algumas versões de pré-lançamento do .NET Framework 3.0 não eliminaram correctamente todos os serviços que criaram. A presença de um destes serviços num sistema bloqueia a instalação do .NET Framework 3.0. A instalação vai falhar com este erro:
ERROR_INSTALL_FAILURE 1603 Erro fatal durante a instalação
Para além disso, um dos ficheiros de registo %temp%\dd_wcf_retCA*.txt vai mostrar o seguinte:
ServiceModelReg [15:48:08:041]: Instalar: Serviço de Identidade Digital da Microsoft (idsvc)
ServiceModelReg [15:48:08:073]: Erro: System.ComponentModel.Win32Exception: O nome já está a ser utilizado como nome de serviço ou como nome a apresentar do serviço
Para resolver este problema
Execute a ferramenta de desinstalação em: http://www.microsoft.com/downloads/details.aspx?FamilyId=AAE7FC63-D405-4E13-909F-E85AA9E66146
Se o problema continuar:
Abra uma linha de comandos.
2.7.2 Algumas Chaves de Registo do Contador de Desempenho WCF Não São Eliminadas na Desinstalação de Algumas Versões de Pré-lançamento do .NET Framework 3.0
Algumas versões de pré-lançamento do .NET Framework 3.0 não removeram todas as chaves de registo do contador de desempenho na desinstalação. A presença destas chaves bloqueia a instalação do .NET Framework 3.0. A instalação vai falhar com este erro:
"ERROR_INSTALL_FAILURE 1603 Erro fatal durante a instalação"
As seguintes chaves podem ainda existir no registo após a desinstalação:
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC Bridge 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelEndpoint 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelOperation 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelService 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SMSvcHost 3.0.0.0\Performance
Para resolver este problema
Execute a ferramenta de desinstalação em: http://www.microsoft.com/downloads/details.aspx?FamilyId=AAE7FC63-D405-4E13-909F-E85AA9E66146
Se o problema continuar:
1. Tente reiniciar o computador. Muitos problemas podem destabilizar os contadores de desempenho. O reinício do computador pode resolver alguns desses problemas e é um procedimento mais seguro do que editar manualmente o registo.
2. Se isso não resolver o problema:
a. Verifique as seguintes chaves do registo. Elimine as chaves de registo principais de qualquer uma das que se seguem que estão vazias ou cujos valores contenham "Wbem*":
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC Bridge 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelEndpoint 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelOperation 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelService 3.0.0.0\Performance
• HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SMSvcHost 3.0.0.0\Performance
b. Por exemplo, se esta chave estiver vazia:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelEndpoint 3.0.0.0\Performance
deverá eliminar:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelEndpoint 3.0.0.0"
2.7.3 Entradas machine.config obsoletas que fazem Referência a Versões "2.0.0.0" de Assemblagens do .NET Framework 3.0 Bloqueiam a Instalação
Algumas versões de pré-lançamento do .NET Framework 3.0 não removeram todas as entradas machine.config na desinstalação. Quaisquer entradas que façam referência à versão 2.0.0.0 da "System.ServiceModel.dll" no ficheiro machine.config vão bloquear a instalação do .NET Framework 3.0. A instalação vai falhar com este erro:
"ERROR_INSTALL_FAILURE 1603 Erro fatal durante a instalação"
Para além disso:
1. Um evento de erro aparece no registo de eventos da aplicação que faz referência a problemas em ServiceModelReg.exe.
2. O ficheiro de registo de configuração com o título "dd_wcf_retCA*" na localização do directório %temp% do utilizador contém uma entrada que indica problemas na execução de ServiceModelReg.exe.
3. A entrada no registo de eventos ou a entrada no registo de configuração tem uma excepção semelhante ao seguinte (o carimbo de data/hora vai variar):
ServiceModelReg [16:21:10:656]: Erro: System.IO.FileLoadException: Não foi possível carregar o ficheiro ou assemblagem 'System.ServiceModel, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' ou uma das respectivas dependências. A definição do manifesto de assemblagem localizada não corresponde à referência de assemblagem. (Excepção de HRESULT: 0x80131040)
Para resolver este problema
Remova as entradas machine.config obsoletas manualmente:
1. A partir de uma janela da linha de comandos, execute "notepad %windir%\microsoft.net\framework\v2.0.50727\config\machine.config"
2. Remova quaisquer nós de XML e nós subordinados que façam referência à System.ServiceModel.dll.
3. Se estiver a executar num computador de 64 bits e o seguinte ficheiro de configuração existir:
"%windir%\Microsoft.NET\Framework64\v2.0.50727\config\machine.config"
edite o ficheiro para remover quaisquer nós de XML e nós subordinados que façam referência a System.ServiceModel.dll.
2.7.4 O Utilizador Poderá Não Conseguir Alojar Serviços WCF na Web se uma Versão Anterior à RC1 do WCF Tiver Sido Anteriormente Instalada
Se tiver instalado uma versão anterior do .NET Framework 3.0 enquanto o IIS estava instalado, quando efectuar a actualização para a versão RTM do .NET Framework 3.0, poderá ter dificuldades em aceder a serviços WCF alojados no IIS utilizando ficheiros .svc. Em computadores com o Windows Server 2003, aceder a uma extensão .svc a partir do browser pode devolver um erro "404: Página Não Localizada". Em computadores com o Windows XP, o conteúdo do .svc pode ser apresentado como texto simples.
Isto deve-se a um problema com registos de mapeamentos de scripts do WCF numa edição anterior.
Para resolver este problema
Existem três formas de resolver este problema:
1. Transfira a ferramenta sem suporte, CleanIISScriptMaps.exe de http://wcf.netfx3.com/files/folders/product_team/entry5648.aspx. Execute a ferramenta a partir de uma consola de comandos sem quaisquer argumentos.
2. Desinstale e reinstale o IIS ou recrie os Web sites:
a. Desinstale o IIS e reinstale-o para que a Metabase do IIS seja actualizada. Em seguida, execute manualmente a ferramenta de instalação do WCF para registar novamente os mapeamentos de scripts do WCF:
"%windir%\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\ServiceModelReg.exe" /r /y
b. Se estiver a executar o Windows 2003 Server, poderá conseguir resolver o problema eliminando o "Web Site Predefinido" e recriando-o.
3. Como solução temporária, instale manualmente o .svc:
a. Pode executar o seguinte comando para instalar o mapeamento .svc manualmente. No entanto, isto actualiza a Metabase do IIS para sites existentes.
"%windir%\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\ServiceModelReg.exe" /s:W3SVC
2.7.5 Danos na Metabase do IIS Bloqueiam a Instalação do .NET Framework 3.0
Se tiver instalado uma versão anterior do .NET Framework 3.0 enquanto o IIS estava instalado, é possível que a metabase do IIS estivesse danificada. Isto poderá bloquear a instalação do .NET Framework 3.0.
Pode identificar este problema das seguintes formas:
1. A instalação vai falhar com este erro:
"ERROR_INSTALL_FAILURE 1603 Erro fatal durante a instalação"
2. Um evento de erros aparece no registo de eventos da aplicação que faz referência a uma falha no registo de mapeamentos de scripts do WCF. A origem do evento é System.ServiceModel.Install.dll 3.0.0.0.
3. Os registos de configuração no directório %temp% vão também conter referências a uma falha no registo de mapeamentos de scripts do WCF.
4. O registo de eventos ou o registo de configuração poderá conter o seguinte rastreio da pilha de excepções:
System.ApplicationException: ServiceModelReg.exe detectou possíveis danos na metabase do IIS que impedem o registo de mapeamentos de scripts do IIS ServiceModel. Corrija os danos na metabase do IIS ou, se não pretender a funcionalidade WebHost ServiceModel, desactive o serviço IISAdmin e registe novamente o ServiceModel.
Para resolver este problema
1. Desinstale o IIS.
2. Reinstale o IIS.
3. Execute novamente o programa de configuração do .NET Framework 3.0.
Este erro ocorre quando o serviço BITS está desactivado, não existe, foi eliminado da aplicação de serviços, foi parado enquanto a transferência estava em curso, ou se qualquer serviço do qual o BITS dependa tiver falhado ou sido eliminado. A mensagem de erro para este problema é "O serviço BITS tem de ser activado antes de iniciar o processo de instalação. Active o serviço BITS e execute novamente a configuração".
Para resolver este problema
services.msc
e clique em OK.Nota: Se não visualizar Serviço de Transferência Inteligente em Segundo Plano na lista, isso significa que o serviço não está instalado no computador. Pode transferir e instalar o BITS a partir de http://www.microsoft.com/downloads/details.aspx?FamilyId=B93356B1-BA43-480F-983D-EB19368F9047&displaylang=en.
Se estes passos não resolverem o problema, poderá ter de activar os serviços dos quais o BITS depende.
Para activar dependências
Estes erros ocorrem quando as interfaces do BITS não estão registadas ou as definições de registo estão danificadas.
Para resolver este problema
Actualize para o BITS 2.0 a partir de http://www.microsoft.com/downloads/details.aspx?FamilyId=B93356B1-BA43-480F-983D-EB19368F9047&displaylang=en.
- ou -
Repare o serviço BITS executando a ferramenta bitsadmin a partir da linha de comandos:
Bitsadmin /util /repairservice /force
Pode transferir a ferramenta Bitsadmin a partir de http://www.microsoft.com/downloads/details.aspx?amp;displaylang=en&familyid=49AE8576-9BB9-4126-9761-BA8011FABF38&displaylang=en.
Estes erros podem ocorrer por uma ou mais das seguintes razões:
Para resolver este problema
Forneça as definições correctas ao servidor proxy e certifique-se de que o seu computador consegue resolver correctamente o servidor proxy.
- ou -
Actualize para o BITS 2.0. Pode transferir o BITS 2.0 a partir de
http://www.microsoft.com/downloads/details.aspx?amp;displaylang=en&familyid=49AE8576-9BB9-4126-9761-BA8011FABF38&displaylang=en.
Nota Para resolver estes erros, saia do programa de configuração, verifique se está ligado à rede e inicie novamente o programa de configuração.
Estes erros ocorrem quando o serviço BITS não conseguiu criar ou escrever num ficheiro. Outro programa, tal como chkdsk.exe, pode estar em execução e pode ter bloqueado o disco e impedido BITS de escrever no ficheiro.
Para resolver este problema
Certifique-se de que nenhum outro programa (por exemplo, chkdsk.exe) que pudesse bloquear o disco está em execução e repita a transferência.
- ou -
Reinicie o computador e inicie novamente o programa de configuração. Certifique-se de que está ligado à Internet.
O serviço BITS falhou devido a um dos seguintes erros relacionados com o proxy:
Para resolver este problema
Forneça credenciais correctas para a autenticação do servidor proxy e reinicie novamente o programa de configuração.
- ou -
Actualize o servidor proxy para suportar HTTP 1.1 e certifique-se que o proxy suporta credenciais implícitas (tal como NTLM). Poderá ter de contactar o administrador de rede.
- ou -
Ignore o proxy ao alterar as definições de proxy do Internet Explorer.
Para ignorar um servidor proxy:
Se necessitar de assistência adicional com as definições do servidor proxy, contacte o administrador de rede.
O serviço BITS não é executado:
Para resolver este problema
Não existe uma solução para este problema. Estes cenários não são suportados.
4.10 Ocorre uma Excepção Quando é Executado um Serviço TCP e MEX TCP na Mesma Porta
Quando a partilha de portas está activada, a configuração de um serviço TCP e de um ponto final MEX TCP para utilizarem a mesma porta provoca uma excepção AddressAlreadyInUse quando iniciar o serviço.
Existem duas formas de resolver este problema:
1. Altere a configuração do serviço de TCP e dos pontos finais MEX de TCP para utilizarem portas diferentes.
2. Active a partilha de portar para TcpTransportBindingElement do ponto final MEX TCP. O seguinte código ilustra este processo:
ServiceMetadataBehavior mexBehavior = new ServiceMetadataBehavior();
host.Description.Behaviors.Add(mexBehavior);
Binding mexBinding = MetadataExchangeBindings.CreateMexTcpBinding();
CustomBinding mexBinding2 = new CustomBinding(mexBinding);
mexBinding2.Elements.Find<TcpTransportBindingElement>().PortSharingEnabled = true;
host.AddServiceEndpoint(typeof(IMetadataExchange), mexBinding2, mexAddress);
4.11 Mensagens de Falha > 64 KB Pode Provocar um ProtocolException
Quando MaxBufferSize é pelo menos Int.MaxValue - 1024 bytes (2147482623 bytes), o envio de mensagem de falha com um tamanho superior a 64 KB faz com que o cliente receba um ProtocolException em vez de uma FaultException. Para transferências de memórias intermédias, MaxBufferSize é igual a MaxReceivedMessageSize. Isto afecta apenas os serviços que utilizam um transporte HTTP(S).
Para resolver este problema, defina MaxBufferSize (MaxReceivedMessageSize) como Int.MaxValue - 1025 bytes (2147482622 bytes) ou inferior. Como alternativa, pode definir directamente HttpWebRequest.DefaultMaximumErrorResponseLength para o limite pretendido. Definir DefaultMaximumErrorResponseLength vai afectar todos os canais no mesmo domínio da aplicação.
4.12 Não é Possível Utilizar EncryptBeforeSign e XmlSerializerFormatAttribute no Mesmo Contrato
A segurança de mensagens com a protecção EncryptBeforeSign não funciona correctamente se XmlSerializerFormatAttribute for utilizado no contrato. Se forem ambos utilizados, o WCF cria mensagens com um conteúdo de corpo inválido após a desencriptação; sendo gerada uma instrução de processamento <?xml ..> adicional antes do primeiro elemento do corpo da mensagem.
Para evitar este problema, não utilize EncryptBeforeSign com XmlSerializerFormatAttribute no mesmo contrato.
4.13 Não é Possível Alojar Canais WS-ReliableMessaging Utilizando Diferentes Versões de WS-Addressing
Um AppDomain não pode alojar canais WS-ReliableMessaging que utilizem diferentes versões de WS-Addressing. Nesses cenários, o primeiro canal activo vai ditar a versão dos cabeçalhos de Acção WS-Addressing para todas as mensagens do protocolo subsequentes, mesmo se essas mensagens tiverem sido enviadas por um canal configurado para utilizar uma versão diferente do protocolo de endereçamento.
Se necessitar de uma única aplicação ou de um serviço para criar canais WS-ReliableMessaging que utilizem versões WS-Addressing diferentes, utilize um AppDomain em separado para cada um deles. Quando um serviço do WCF é WebHosted, terá de utilizar dois directórios virtuais, um que aloje serviços com pontos finais WS-Addressing 1.0 e um com pontos finais WS-Addressing de Agosto de 2004.
<system.webServer>
<modules>
<add name="WorkflowHost" type="System.Workflow.Runtime.Hosting.WorkflowWebHostingModule, System.Workflow.Runtime, Version=3.0.00000.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="runtimeVersionv2.0" />
</modules>
</system.webServer> |
Não é possível adicionar um serviço ExternalDataExchangeService a várias instâncias WorkflowRuntime. Sempre que uma nova instância WorkflowRuntime é criada, um novo serviço ExternalDataExchangeService deve ser criado e quaisquer serviços de comunicação locais devem ser adicionados novamente ao serviço ExternalDataExchangeService.
Se criar uma actividade composta personalizada contendo uma actividade subordinada que implemente ICompensatable e uma actividade CompensateActivity que compense a actividade composta, mas não a actividade subordinada de forma explícita, então a compensação vai falhar com excepções se a actividade personalizada for colocada num fluxo de trabalho.
Para evitar este problema, deve encapsular todas as actividades subordinadas de uma actividade personalizada numa actividade CompensatableSequenceActivity e implementar compensações nessa actividade CompensatableSequenceActivity.
Se uma solução tiver vários projectos, então os directórios do projecto têm de estar ao mesmo nível uns dos outros. Se alterar a estrutura do projecto de maneira a que um projecto tenha a respectiva raiz no directório de outro projecto, poderá visualizar erros de compilação de marcação inesperados durante a Reconstrução indicando que um tipo numa DLL referida (de um dos projectos dependentes) não foi encontrado.
As soluções são: