Определить, к какому процессу w3wp.exe принадлежит тот пул приложений в Windows 7/IIS7.5?
Недавно я обновил свою машину разработки с Windows XP до Windows 7. Как я могу узнать, какой процесс w3wp.exe принадлежит к тому, какой пул приложений на рабочем столе под управлением Windows 7?
Но как насчет моего рабочего стола?
Ответы
Ответ 1
Если вы откроете диспетчер IIS, перейдите в корневой каталог node в дереве слева, которое представляет ваш компьютер (должно быть помечено как имя вашего компьютера).
В представлении "Возможности" справа вы увидите раздел IIS. Под этим вы увидите Worker Processes
. Выберите это, и он должен показать вам все запущенные рабочие процессы и некоторую базовую информацию, включая ProcessId.
Вы можете сопоставить ProcessId с процессом сопоставления на вкладке "Процессы" в диспетчере задач (показывая процессы от всех пользователей и включая столбец ProcessId в результатах).
Ответ 2
Вы также можете зайти в Диспетчер задач и добавить столбцы PID и Командная строка, чтобы увидеть необходимую вам информацию.
![enter image description here]()
Зачеркнутый контент содержит имена отдельных процессов.
Я считаю, что этот рабочий процесс немного менее громоздкий, чем необходимость отходить от того, что я, возможно, просматриваю в IIS, чтобы увидеть эту информацию (чтобы потом переместиться обратно туда, где я был).
Ответ 3
Я знаю, что это старый пост, но вот способ перечислить пулы приложений и идентификаторы процессов с помощью кода С#.
void Main()
{
using (var serverManager = new ServerManager())
{
foreach (var appPool in serverManager.ApplicationPools)
{
string.Format("App pool name = {0}", appPool.Name).Dump();
foreach (var workerProcess in appPool.WorkerProcesses)
{
string.Format("Process id = {0}", workerProcess.ProcessId).Dump();
}
}
"Done".Dump();
}
}
Убедитесь, что вы ссылаетесь на Microsoft.Web.Administration.dll в% WINDIR%\System32\inetsrv.
Если у вас нет LINQPad, замените дампы на Console.WriteLine
(s)