2009-01-09 5 views
4

J'ai utilisé un macro pratique avec les raccourcis clavier dans Visual Studio pour attacher à Windows XP IIS 5.1:Joindre à IIS7 avec une macro?

Imports System 
Imports EnvDTE 
Imports EnvDTE80 
Imports EnvDTE90 
Imports System.Diagnostics 
Imports System.IO 

Public Module AttachDebugger 

    ' This subroutine attaches to the first IIS Web Server found. 
    Public Sub AttachToFirstIISWebServer() 
     Dim process As EnvDTE.Process 

     For Each process In DTE.Debugger.LocalProcesses 
      If (Path.GetFileName(process.Name).ToLower() = "aspnet_wp.exe") Then 
       process.Attach() 
       Exit Sub 
      End If 
     Next 

     MsgBox("No IIS Server found") 
    End Sub 

End Module 

Cependant, avec Vista, processus IIS7 (w3wp.exe) n'est plus en LocalProcesses, mais fonctionne comme un service on Windows . Comment puis-je joindre à un service avec une macro?

Je travaille souvent avec des solutions assez volumineuses et je ne veux pas utiliser F5 pour tout recompiler à chaque fois. RÉSOLU: La macro fonctionne correctement, j'ai juste eu un mauvais nom de processus en premier. aspnet_wp.exe avec XP, w3wp.exe avec Vista.

+0

Je ne vois même pas comment ça marcherait sur XP. XP n'a pas w3wp.exe (vous vouliez dire que ce n'est pas w3wc) c'est un processus IIS6. – AnthonyWJones

+0

Merci. aspnet_wp.exe sur XP, w3wp.exe sur Vista. – mika

Répondre

1

Il ne fonctionne peut-être pas encore. Vous devez d'abord frapper le site pour provoquer IIS pour le faire tourner. Aussi, il peut y avoir plus d'un w3wp.exe (je peux me tromper, je ne connais que IIS7 à partir du serveur 2008) si l'implémentation Vista de IIS7 prend en charge plusieurs pools d'applications.

Je ne vois aucune raison pour laquelle, lorsque le processus est opérationnel, il ne serait pas listé dans l'ensemble de processus local.

Questions connexes