Как вы автоматически подключаетесь к определенному пулу IIS на удаленном сервере? - PullRequest
1 голос
/ 17 апреля 2009

В настоящее время три разработчика используют один ящик IIS для тестирования. Из-за сторонних утилит и других ограничений мы не можем запустить проект локально, поэтому удаленная отладка является единственной возможностью. В настоящее время мы выполняем удаленный доступ к веб-серверу, запускаем iisapp.vps, чтобы получить PID наших отдельных сайтов, а затем запускаем удаленную отладку в VS2008 для подключения к этому pid.

Я нашел скрипты для автоматического подключения к w3wp автоматически, если он работает только один, но я не нашел способа удаленно найти PID w3wp в скрипте и использовать его для подключения.

1 Ответ

1 голос
/ 24 августа 2009

Большинство сценариев, работающих с IIS, предполагают, что вы работаете на локальном компьютере. Если вы посмотрите на код сценария, он, скорее всего, использует WMI для работы с IIS, и первое, что он должен сделать, это подключиться к провайдеру WMI, которому всегда требуется имя компьютера и путь провайдера WMI. Имя машины для локальной машины часто представляется как "." где требуется.

Например:

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

Если вы измените strComputer, чтобы он указывал на сервер IIS, вы получите PID для всех процессов w3wp, запущенных во время запроса.

Примечание: приведенный выше код является фрагментом скрипта, а не законченной программой.

...