首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法访问IIS-ServerManager配置

无法访问IIS-ServerManager配置
EN

Stack Overflow用户
提问于 2014-09-30 17:47:13
回答 1查看 1K关注 0票数 1

我想在WPF-TreeView控件中显示IIS配置。我的操作系统是Windows8.1,我用VS2013编写C#。因此,我添加了对Microsoft.Web.Administration.dll的引用,并编写了以下代码:

代码语言:javascript
复制
    using (ServerManager serverManager = new ServerManager())
    {
        foreach (var site in serverManager.Sites)
        {
            var siteNode = new TreeViewItem() { Header = string.Format("Site: {0}", site.Name) };
            _irv.trvIisInformation.Items.Add(siteNode);
            foreach (var application in site.Applications)
            {
                var appPoolNode = new TreeViewItem() { Header = string.Format("AppPool: {0}, Type: {1}", application.ApplicationPoolName, HoleApplikationstyp(serverManager, application)) };
                siteNode.Items.Add(appPoolNode);

                foreach (var virtDir in application.VirtualDirectories)
                {
                    appPoolNode.Items.Add(new TreeViewItem() { Header = string.Format("Dir: {0} [{1}]", virtDir.Path, virtDir.PhysicalPath) });
                }
            }
        }
    }

创建了ServerManager-object,但是当我查看每个示例中看到的对象时:"System.Runtime.InteropServices.COMException". = "serverManager.ApplicationDefaults“引发了ServerManager类型的异常

当编译器想要使用ServerManager的站点启动foreach循环时...

System.Runtime.InteropServices.COMException wurde并不在后面。HResult=-2147221164 Message=Die COM-Klassenfactory für die Komponente mit CLSID {2B72133B-3F5B-4602-8952-803546CE3344} konnte aufgrund des folgenden Fehlers nicht abgerufen werden: 80040154 Klasse nicht registriert (Ausnahme von HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))。布尔ErrorCode=-2147221164类型: bei System.Runtime.Remoting.RemotingServices.AllocateUninitializedObject(RuntimeType serverType) bei System.Runtime.Remoting.Activation.ActivationServices.IsCurrentContextOK(RuntimeType objectType) bei System.RuntimeTypeHandle.CreateInstance(RuntimeType serverType,Object[] bNewObj,Boolean publicOnly,Boolean noCheck,Boolean& canBeCached,RuntimeMethodHandleInternal& ctor,Boolean& bNeedSecurityCheck) bei System.RuntimeType.CreateInstanceSlow(Boolean publicOnly,Object[]bNewObj,Boolean publicOnly,Boolean noCheck,Boolean fillCache,StackCrawlMark& stackMark) bei System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly,Boolean skipCheckThis,Boolean fillCache,StackCrawlMark& stackMark) bei System.RuntimeType.CreateInstanceDefaultCtor(Boolean bei Microsoft.Web.Administration.ConfigurationManager.CreateAdminManagerTClass,TInterface bei Microsoft.Web.Administration.ConfigurationManager.CreateWritableAdminManager(WebConfigurationMap System.Activator.CreateInstanceT,webConfigMap configPathToEdit,Boolean isAdminConfig) bei configMap,String configPathToEdit,Boolean isAdminConfig) bei rawConfigurationPath,String cacheKey,bei Microsoft.Web.Administration.ConfigurationManager.GetApplicationHostConfiguration() bei Microsoft.Web.Administration.ServerManager.GetApplicationHostConfiguration() bei Microsoft.Web.Administration.ServerManager.get_SitesSection() bei Microsoft.Web.Administration.ServerManager.get_Sites() ( Boolean isAdminConfig)

有人知道该怎么做吗?

提前感谢!帕特里克

EN

回答 1

Stack Overflow用户

发布于 2014-10-11 05:15:22

确保计算机上安装了IIS管理脚本和工具(在“添加/删除程序”“->”“打开或关闭Windows功能”下)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26117710

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档