el Guille, la Web del Visual Basic, C#, .NET y más...

Solución de problemas con VS2008 en Windows Vista

Error de DNS al ejecutar un sitio Web desde Visual Studio en Windows Vista

(no se muestra a causa de un error)

 

Publicado el 24/Mar/2008
Actualizado el 24/Mar/2008
Autor: Guillermo 'guille' Som

Cómo solucionar el problema de que al ejecutar un proyecto Web te diga que no se encuentra el sitio Web. Esto me ha ocurrido en Windows Vista con Internet Explorer 7 y con Visual Studio 2008.



 

La batallita del agüelo:

El otro día creé un proyecto del tipo "sitio Web" en Visual Studio 2008 para probar un sitio Web con acceso a datos en una base de datos de Access.

Pero al ejecutar la aplicación, me daba error de que no se podía mostrar (el error era de que no se encontraba el sitio), vamos lo que se conoce como un problema de resolución de nombres DNS, es decir, no se encuentra el sitio porque no se puede resolver el nombre. Tal como te muestro en la figura 1:

Figura 1. Error al mostrar el sitio Web
Figura 1. Error al mostrar el sitio Web

Como yo uso Windows Vista Ultimate, el usuario es del grupo de administradores y no uso el UAC (User Account Control).
Para desconectar el UAC de Windows Vista, seguí los pasos que publiqué hacer unas semanas (el link anterior te llevará al artículo en cuestión).

El problema, es que antes no me ocurría esto... pensé que podía ser por varias causas, a saber:

  1. Porque tengo el Service Pack 1 de Windows Vista
  2. Porque desinstalé el Visual Studio 2005 y se quedó algo "raro"

La cuestión es que volví a reinstalar el Visual Studio 2008.

Pero nada, la cosa seguía igual.

Probé en otro equipo que tenía el Windows Vista, pero con el UAC activado, y funcionaba, aunque en ese caso, me daba otro error, pero que pude resolverlo.

El error (o errores porque fueron dos) es que ¡¡¡me pedía autenticación para entrar en localhost!!!
Bueno, esto es fácil de solucionar, le puse los datos del usuario y password de Windows y entró.

El segundo error que me dio (en el otro equipo que sí funcionaba) era que en la página Web me mostraba un número de puerto y el servidor de desarrollo de ASP.NET usaba otro.
Esto lo pude solucionar como te explico en: El número de puerto del Servidor de desarrollo de ASP.NET es diferente al mostrado en el explorador.

De todas formas, una de las soluciones para este problema de "inconsistencia" de los números de puertos, era poner en el navegador el mismo puerto del servidor de desarrollo de ASP.NET (ASP.NET Development Server). Esto funcionó en el "otro" equipo, pero no en el portátil con el que yo suelo trabajar.

 

La solución

Probando en una de las máquinas virtuales que tengo con Windows XP y Visual Studio 2008, todo funcionaba bien.
Pero claro, no era cuestión de andar cambiando de mi "máquina de trabajo" a la virtual... para una vez, vale, pero no era cosa de "olvidarse" del problema y tener que andar haciendo estos cambios de "máquinas".

Así que... hice lo que algunos no hacen, y busqué en Internet por este problema, para ver cuál podía ser la solución.

En mi búsqueda, me encontré con este artículo: ASP.NET Development Server Problems Under Vista.
Solo que ahí explicaba cómo solucionar ese problema con el FireFox.

Pero como no encontraba otra respuesta más concreta, y a los que pregunté me dijeron que nunca habían tenido ese problema, pues... la puse en práctica... a ver si funciona...

¡Y funcionó!

¿Cuál es la solución?

Pues lo que comentaba Rob Bazinet en su artículo sobre crear una entrada en el registro para deshabilitar el IPv6.

Es decir, abres el regedit.exe, vas a la clave: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\tcpip6\Parameters
creas un valor DWORD llamado DisabledComponents y le asignas el valor decimal 255 (hexadecimal FF).
Reinicias el equipo y... ¡funcionando que es gerundio!

Todo esto para usarlo con el Internet Explorer 7, que ya te digo que el FireFox no lo tengo instalado.

El problema que seguía teniendo era que al ejecutar la aplicación (o sitio) Web, en el explorador me mostraba un número de puerto, y el servidor de ASP.NET me mostraba otro, y la única forma de que se mostrara el contenido de las páginas Web era usando el puerto del servidor de ASP.NET.

La solución para este otro problema es la que te muestro aquí: Indicar el puerto a usar en el servidor de desarrollo de ASP.NET (en realidad, el título de ese "artículo" es: El número de puerto del Servidor de desarrollo de ASP.NET es diferente al mostrado en el explorador).

 

Nota:
Si en lugar de crear la aplicación usando el sistema de archivos (como es en este caso problemático), creo una aplicación alojada en el servidor IIS, todo funciona a las mil maravillas.
Este problema, solo se me ha dado al crear el sitio Web usando el sistema de archivos, que es cuando se usa el servidor de desarrollo de ASP.NET (ASP.NET Developer Server).

 

Espero que te sea de utilidad.

 

Nos vemos.
Guillermo

 



 


La fecha/hora en el servidor es: 24/11/2024 16:51:43

La fecha actual GMT (UTC) es: 

©Guillermo 'guille' Som, 1996-2024