portella.com.br

Blog pessoal de Felipe Portella

Problemas com o ASP.NET Development Server

without comments

Ontem, misteriosamente o meu ambiente de desenvolvimento ASP.NET parou de funcionar. E não foi algum problema do meu projeto, pois eu criei um novo projeto ASP.NET Web Site só com um “Olá mundo” e ao executá-lo com o F5 ou CTRL+F5 o erro se repetia.

O problema era que ao executar qualquer aplicação ASP.NET, o browser exibia uma mensagem padrão informando que não podia exibir aquele site:

No Internet Explorer: “Internet Explorer cannot display the webpage”
No Firefox: “The connection was reset”
Com o browser interno do VS: “Navigation to the webpage was cancelled”

Após alguns testes eu descobri que isso só acontecia para o servidor web interno do Visual Studio 2005 (o “ASP.NET Development Server”), que é justamente o que eu uso durante o desenvolvimento. Ao abrir com qualquer browser o mesmo projeto usando o IIS em localhost tudo funcionava bem.

Tentei todas as opções óbvias nesta situação: resinstalei o Visual Studio 2005, .NET Framework 2.0 … e após vários boots sem sucesso resolvi testar no Windows Vista que eu tenho numa máquina virtual. Como essa máquina só tinha o sistema operacional para uns testes, eu aproveitei e instalei o trial do Visual Studio 2008. Após a instalação criei um projeto ASP.NET 3.5 com uma página “Olá mundo” e ao executar tive uma grande surpresa. O mesmo problema !

Como que em duas máquinas (sendo uma virtual), com sistemas operacionais diferentes e versões diferentes do Visual Studio o mesmo erro se repete?!

Após um bom tempo de pesquisa na Internet achei uma mensagem no ASP.NET Forum indicando uma solução para este problema no Vista no blog do Rob Bazinet:

rbazinet.wordpress.com/2007/10/25/aspnet-development-server-problems-under-vista/#comment-3468

Segundo as pesquisas do Rob, o IPv6 causa alguns problemas no Vista na resolução de nomes locais. Desabilitando ele tudo volta a funcionar com qualquer browser.

Desabilitando o IPv6

Ao contrário do Windows XP, o IPv6 não pode ser desinstalado no Windows Vista. Apesar de você poder desabilitá-lo nas propriedades das conexões de rede, essa solução não resolve o problema mencionado acima. Assim temos que recorrer ao registro indo na chave:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters\

e criando um valor do tipo DWORD chamado de DisabledComponents e com valor hexadecimal FF. A chave vai apresentar o valor 0x000000FF (255).

É preciso dar boot para as alterações entrarem em vigor.

Mais detalhes sobre o IPv6 no Vista em:
technet.microsoft.com/pt-br/library/bb878057(en-us).aspx#EAKAC

A solução acima resolveu o meu problema no Vista com o Visual Studio 2008, mas não no meu Windows XP Tablet Edition com o Visual Studio 2005. A única solução que funcionou no Tablet foi a boa e velha restauração do sistema.

Como minha máquina estava funcionando ontem, fiz a restauração e tudo voltou a funcionar, mas fiquei sem uma boa explicação do que aconteceu. Se você souber de algo me avise pois perdi um dia inteiro com esse problema e não quero perder outro se voltar a se repetir! Pelo que entendi o erro do IPv6 é algo “comum” no Vista, mas não me pareceu o mesmo problema no Windows XP Tablet Edition, ou pelo menos esta solução não funciona nele.

Written by Felipe Portella

dezembro 21st, 2008 at 11:55 pm

Posted in .NET Framework

Tagged with

Leave a Reply

You must be logged in to post a comment.