如果在 IIS7 上启用/禁用 IIS6 兼容性角色,我如何使用 C# 检查?
最佳答案
可以查看注册表中的值
HKEY_LOCAL_MACHINE\Software\Microsoft\InetStp\Components\WMICompatibility
或者,您可以将 servermanagercmd 的内容输出到一个 xml 文件并解析该文件以查找 iis6 兼容性组件
ServerManagerCmd -query [SaveFile.xml]
如果您在 R2 上执行此操作,servermanagercmd 现已弃用,因此您可能希望使用 powershell 来实现相同的检查。 这里有一些 powershell 示例,在本例中是远程完成的 http://www.techmumbojumblog.com/?p=217
上一个答案中的 WMI 方法可能也不错,尤其是在验证兼容性工具已安装后,如果您有更多配置任务要在 IIS 上执行。
顺便说一句,如果您确实找到了兼容性组件未处理的配置设置,这是我从 C# 中发现的,我在 iis6 中通过 wmi 配置的内容在网站级别和以下(网站,虚拟目录和池),但要配置 Web 服务器级别,我必须使用随 iis7 安装的 API,来自 System32\inetsrv 的 Microsoft.Web.Administration.dll。
using Microsoft.Web.Administration;
关于c# - 以编程方式检查 IIS6 兼容性角色是否在 IIS7 中启用/禁用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2551044/