gpt4 book ai didi

.net - 使用 Microsoft.Web.Administration 中的 ServerManager 类时出现 COM 异常

转载 作者:行者123 更新时间:2023-12-02 01:16:54 26 4
gpt4 key购买 nike

我正在尝试使用以下代码从 IIS 检索网站:

var serverManager = new ServerManager();

var site = serverManager.Sites.FirstOrDefault(s => s.Name == Config.WebSiteName);

ServerManager 类在 Microsoft.Web.Administration 中定义,我正在使用复制本地的引用,并且 dll 与应用程序一起部署。

如果我的应用程序在 Win7 64 位上运行,它可以正常运行,但是当我尝试在 Windows XP 32 上运行它时,它会抛出异常:

Retrieving the COM class factory for component with CLSID {2B72133B-3F5B-4602-8952-803546CE3344} failed due to the following error: 80040154

我正在将该应用程序部署为独立的 winforms .net 3.5 应用程序(为任何 CPU 构建)。

有什么想法吗?

提前致谢。

最佳答案

该错误是 REGDB_E_CLASSNOTREG,即它试图调用的代码在您的 XP 机器上不存在。来自 the docs

Provides read and write access to the IIS 7 configuration system.

Win XP Pro 只有 IIS 6 而不是 7。您必须使用其他一些机制,例如iisweb.vbs 、adplus 或他们在幕后使用的 COM 对象。

关于.net - 使用 Microsoft.Web.Administration 中的 ServerManager 类时出现 COM 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10333569/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com