IIS WMI 提供程序对象层次结构

每个 Windows Management Instrumentation (WMI) 提供程序都为该提供程序所特有的类维护其自己的名称空间。每个 WMI 提供程序名称空间都是分层次地描述域中对象的类定义的集合。IIS WMI 提供程序类的名称空间是 MicrosoftIISv2。脚本编写者和程序员使用 MicrosoftIISv2 名称空间来读取和配置 IIS 配置数据库。

WMI 类的类型

MicrosoftIISv2 名称空间中定义的类对应于 IIS 配置数据库架构,这意味着对于每个唯一的配置数据库项,至少有一个为其定义的 WMI 类。大多数配置数据库项都有多个为它们定义的 WMI 类:包含只读属性的 WMI 元素类;以及包含可写属性的 WMI 设置类。

下例显示了一些配置数据库项和与它们对应的 WMI 元素类(这些类的名称与 ADSI 类完全相同)以及设置类之间的关系。

通用名称元素类设置类
Computer IIsComputer IIsComputerSetting
WWW service IIsWebService IIsWebServiceSetting
Web server IIsWebServer IIsWebServerSetting
Web virtual directory IIsWebVirtualDir IIsWebVirtualDirSetting
FTP service IIsFtpService IIsFtpServiceSetting

第三种 WMI 类(关联类)公开了元素类和设置类之间的关系,以及元素类和其他元素类之间的关系。

下面将描述三种类型的 WMI 类及其用法。

WMI 元素类

WMI 元素类公开了下面几种无法更改或写入的类型属性:

例如,下面是 WMI 元素类 IIsWebVirtualDir 公开的一些不能更改的属性:

由于没有包含只读方法的 WMI 类,因此可以调用和执行 WMI 元素类方法。例如,可以从脚本或程序调用 IIsWebVirtualDir 类方法,如 AppCreateAppDeleteAppUnload

可以使用 WMI 元素类执行下列操作:

WMI 设置类

WMI 设置类公开读取/写入属性,可以使用脚本或程序更改这些属性。设置类不包含方法。

例如,IIsWebVirtualDirSettings 设置类(IIsWebVirtualDir 元素类的对应类),除了其他属性外还公开下面的可写配置数据库属性:

当直接设置配置数据库属性时,请使用设置类。只需要使用 WMI 元素类来读取信息。在下面的 JScript 代码示例中,脚本使用 IIsWebVirtualDirSetting 设置类将 AccessFlags 配置数据库属性设置为零。请注意,该脚本中没有使用元素类。

var providerObj = GetObject("winmgmts:/root/MicrosoftIISv2");
var vdirObj = providerObj.Get("IISWebVirtualDirSetting='W3SVC/1/ROOT'");
vdirObj.AccessFlags = 0;
vdirObj.Put_();

还可以使用 WMI 设置类来设置可写配置数据库属性。

WMI 关联类

WMI 元素类可以与其他元素类或与设置类关联。这些关联本身也是类。可以使用 WMI 关联类来查找元素或与任何元素对象关联的设置对象。关联类名是通过将两个名称用下划线分隔来区别的,如 IIsComputer_IIsComputerSettingIIsComputer_IIsMimeMap

下面的列表说明了元素类 IIsWebVirtualDir 的一些关联:

关联类使您可以轻松地找到 WMI 元素类的实例和关联的 WMI 类的实例之间的关联。例如,通过使用 IIsWebDirectoryIISWebFile 的关联,可以找到 Web 目录中包含的每个文件的 IP 安全设置(IPSecuritySetting)。

同样,可以找到一个元素类的所有子类。例如,要查找一个 Web 虚拟目录的子类,请使用关联类 IIsWebVirtualDir_IIsWebVirtualDir

相关主题

© 1997-2003 Microsoft Corporation。保留所有权利