Asp.net 检索CLSID为的组件的COM类工厂..错误

Asp.net 检索CLSID为的组件的COM类工厂..错误,asp.net,asp.net-mvc,Asp.net,Asp.net Mvc,错误: 检索CLSID为{2B72133B-3F5B-4602-8952-803546CE3344}的组件的COM类工厂失败,原因是以下错误:80040154类未注册(HRESULT中的异常:0x80040154(REGDB_E_CLASSNOTREG))。如果Windows中未安装IIS,将引发此异常。您可以将该异常用作依赖项检查器 要安装IIS,请执行以下操作: Windows开始菜单>控制面板>程序和功能>打开或关闭Windows功能>检查“Internet信息服务”树中的顶部节点 编辑

错误:


检索CLSID为{2B72133B-3F5B-4602-8952-803546CE3344}的组件的COM类工厂失败,原因是以下错误:80040154类未注册(HRESULT中的异常:0x80040154(REGDB_E_CLASSNOTREG))。如果Windows中未安装IIS,将引发此异常。您可以将该异常用作依赖项检查器

要安装IIS,请执行以下操作:

Windows开始菜单>控制面板>程序和功能>打开或关闭Windows功能>检查“Internet信息服务”树中的顶部节点

编辑:

更好的方法就是通过这种方式检查服务

protected void btnRecycle_Click(object sender, EventArgs e)
{
    ServerManager mgr = new ServerManager();
    System.Collections.IEnumerator ie = mgr.ApplicationPools.GetEnumerator();

    while (ie.MoveNext())
    {
                    ddlApplicationPool.Items.Add(((Microsoft.Web.Administration.ApplicationPool)(ie.Current)).Name);
    }

}

我也有同样的问题。我很想知道答案!请提供更多背景信息或答案(如果找到)。我通过意识到未安装IIS并在执行此代码的框中安装IIS解决了此问题。我假设你的情况比这更复杂,但以防万一,我还是发布了这篇文章。
System.ServiceProcess.ServiceController sc1 = new System.ServiceProcess.ServiceController("World Wide Web Publishing Service");