c# - 如何获取所有正在运行的 ASP.NET 工作进程及其关联的应用程序池的列表?

标签 c# asp.net powershell application-pool w3wp.exe

我需要获取所有正在运行的 ASP.NET 辅助进程及其关联的应用程序池和进程 ID 的列表。

有没有一种实用的方法(C#)或 powershell 脚本来做到这一点?

最佳答案

在 IIS 6.0 中识别工作进程

  • 开始 > 运行 > 命令
  • 转到 Windows > System32
  • 运行cscript iisapp.vbs
  • 您将获得正在运行的列表 工作进程 ID 和应用程序池名称。

从 IIS 7.0 开始,您需要运行 IIS 命令工具 (appcmd)。

  • 开始 > 运行 > 命令
  • 转到 Windows > System32 > Inetsrv
  • 运行 appcmd list wp

如果您想将该列表保存到文本文件,只需在命令后附加 >> myfile.txt。

现在,在这里你可以看到iisapp.vbs源代码。

它使用 WMI 获取所有信息。将其重写为 C# 看起来很简单。

无论如何,可以在此处查看我找到此信息的完整文章:Identifying Worker Process (w3wp.exe)

关于c# - 如何获取所有正在运行的 ASP.NET 工作进程及其关联的应用程序池的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5490773/

相关文章:

powershell - 如果省略必需的参数,是否可以强制 PowerShell 脚本抛出?

powershell - 在 psm1 模块内的导入模块上使用 'hiding' 时绕过 PowerShell 模块 '-Force'

c# - C# 中是否有任何紧凑而优雅的方法来同时遍历两个列表?

c# - 我可以将 SimpleMembership 类加载到 EntityFramework 中吗?

c# - 窗口标题文本颜色的主题资源是什么?

c# - 为什么我的代码显然在调用 LocalDataStoreMgr.GetNamedDataSlot?

jquery - DoPostback刷新页面但没有捕获事件处理程序

windows - 如何递归文件夹并显示相对文件夹路径?

c# - javascript:如何将安全字符串传递给客户端显示的数组而不弄乱它/ASP.NET C#

c# - 单击项目时,如何删除包裹 listBox1 中所选项目的蓝色?