2009-04-17 8 views
1

Actuellement, trois développeurs partagent une boîte IIS pour les tests. En raison des utilitaires tiers et d'autres restrictions, nous ne pouvons pas exécuter le projet localement, donc le débogage à distance est la seule option. Notre processus actuel consiste à se connecter à distance au serveur Web, à exécuter iisapp.vps pour obtenir le PID de nos sites individuels, puis à exécuter le débogage distant dans VS2008 pour se connecter à ce pid.Comment vous connecter automatiquement à un pool IIS spécifique sur un serveur distant?

J'ai trouvé des scripts pour se connecter automatiquement à w3wp automatiquement, si c'est le seul qui fonctionne mais je n'ai pas trouvé un moyen de trouver à distance le PID w3wp dans le script et l'utiliser pour attacher.

Répondre

1

La plupart des scripts qui fonctionnent avec IIS supposent que vous exécutez sur la machine locale. Si vous regardez dans le code de script, il est très probable que WMI fonctionne avec IIS et la première chose à faire est de se connecter au fournisseur WMI qui nécessite toujours un nom de machine et un chemin de fournisseur WMI. Le nom de la machine locale est souvent représenté par "." si nécessaire.

Par exemple:

 
strComputer = "." 
Set objWMIService = GetObject("winmgmts:" _ 
    & "{impersonationLevel=impersonate}!\\" _ 
    & strComputer & "\root\cimv2") 

Set colProcesses = objWMIService.ExecQuery(_ 
    "select * from win32_process Where Name = 'w3wp.exe'") 
For Each objProcess in colProcesses 
    WScript.Echo objProcess.ProcessId 

Si vous changez strComputer pour pointer vers le serveur IIS, vous obtiendrez les PIDs pour tous les processus en cours d'exécution w3wp au moment de la requête.

Remarque: le code ci-dessus est un fragment d'un script qui n'est pas un programme complet.

+0

Merci, je vais essayer de mettre en œuvre cela et voir comment ça marche! – Ravedave

Questions connexes