2010-11-30 20 views
28

estoy depuración de una aplicación ASP.NET pero a veces no se puede encontrar ni en w3wpVisual Studio lista de procesos (Menú: Debug -> Attach to Process...) ni en task manager. He seleccionado las casillas de verificación 'Show processes from all users' y 'Show processes in all sessions'. Cuando ejecute el proyecto desde localhost, después de que ocurra una excepción sin manos, el depurador se adjuntaría a w3wp (¡demasiado tarde para entrar en el código)!No se puede adjuntar depurador para w3wp

¿Por qué no puedo ver w3wp a veces?

Windows Server 2008 Enterprise Edition 64-bit, Visual Studio 2010 

Respuesta

70

Al restablecer IIS o IIS no se está ejecutando, es necesario hacer una llamada al servidor, cuando se pulse el servidor por primera vez que se inicia el proceso dew3wp.

+1

Sí, al hacer una llamada a localhost resolvió el problema. ¡Esto sucedió desde que cambié mi página de inicio de localhost a Google! – Xaqron

+0

Simplemente presionando cualquier página en el sitio web alojado por su servidor debe girar el w3wp.exe (proceso de trabajo del grupo de aplicaciones IIS). – MikeTeeVee

+0

¡Funciona! Después de abrir una página web, adjuntar al proceso. ¡No antes! – gradosevic

4

Lo mismo me estaba pasando a mí, cuando recordé que IIS tiene un tiempo de inactividad. Como se muestra arriba, el proc w3wp se está ejecutando, pero VS2010 lo mira en estado inactivo y piensa que no se está ejecutando, así que no lo muestra en la lista ...

girando IIS [llamando a un sitio servido desde locahost en su navegador web favorito] reactiva IIS y repentinamente VS puede ver el proceso [w3wp] ahora también

NOTA - debe pedirle a MS que ignore el estado de reposo de IIS/w3wp y si está en modo de reposo - hace que se active automáticamente ¡arriba!

gracias

+0

Para cualquiera que lea esta respuesta ... IIS no tiene un 'estado de suspensión'. El proceso w3wp se ha ido. Se inicia un nuevo proceso de w3wp cuando es necesario. –

2

También he encontrado el mismo problema. Solo crea el proyecto de nuevo. A continuación, aparecería w3wp.exe en la lista de procesos adjuntos.

3

solución rápida para esto, al depurar servicios WCF en Visual Studio:

  1. Pop abrir el archivo web.config de la aplicación cliente.

  2. Busque la entrada del punto final para el servicio que no aparece en Adjuntar al proceso.

  3. Pulse Ctrl + Haga clic en la URL del punto final para que cargue la ventana del servicio en el navegador interno de Visual Studio.

Eso es todo. IIS se iniciará y ahora puede volver a su servicio y encontrar W3WP.exe en la lista de procesos.

Además, asegúrese de que "Mostrar procesos de todos los usuarios" esté marcado.

+0

En su solución, el elemento 3 hace el trabajo como dice la respuesta confirmada. Igual que 'CRTL' +' Click' en un enlace 'localhost' en' MS-Word'. – Xaqron

+0

De acuerdo, @Xaqron. Mi razón para publicar estos pasos fue dar una solución rápida, usando un archivo (web.config) al que es fácil acceder en el proyecto actual. –

+0

Ok, sé que esta pregunta es antigua, pero espero que alguien pueda volver y ayudarme. No entiendo el paso 2. ¿Qué estoy buscando en la web.config? Para mí, w3wp.exe no aparece en Adjuntar al proceso. ¿Qué punto final buscaría? –

2

También cuando la ventana adjuntar al proceso está abierta en la parte inferior izquierda hay una casilla de verificación 'Mostrar procesos de todos los usuarios' asegúrese de que esta casilla de verificación esté marcada y luego aparecerá. Es posible que también deba ejecutar Visual Studio como administrador. Espero que esto ayude.

6

Lo mismo me ha pasado a mí. ¡Después de una actualización no pude encontrar el W3WP! Me di cuenta de que no mostraba todos los procesos. Se requiere marcar la casilla "Mostrar procesos de todos los usuarios".

1

Asegúrese de ejecutar VS como administrador.

1

Mire detenidamente la URL de la página que está depurando en caso de que cambie a un servidor diferente, algo que rara vez puede suceder, pero que me sucedió a mí.Esto cae bajo la categoría de "verificar sus suposiciones".

0

No sé cómo, pero parecía haber una aplicación adicional ligada al grupo de aplicaciones que estaba usando. Intente crear un nuevo grupo de aplicaciones y apunte su aplicación al grupo de aplicaciones recientemente creado. Verifique que solo haya 1 aplicación con su nuevo grupo de aplicaciones.

Cuestiones relacionadas