__Win32Provider类

__Win32Provider系统类在 WMI 中注册有关提供程序的物理实现的信息。 默认情况下,未设置 HostingModel 属性的提供程序将作为 NetworkServiceHostOrSelfHost 在Wmiprvse.exe进程中运行。

以下语法从托管对象格式 (MOF) 代码简化而来,包括所有继承属性。 属性按字母顺序列出,而不是按 MOF 顺序列出。

语法

class __Win32Provider : __Provider
{
  string   ClientLoadableCLSID;
  string   CLSID;
  sint32   Concurrency;
  string   DefaultMachineName;
  boolean  Enabled;
  string   HostingModel;
  sint32   ImpersonationLevel = 0;
  sint32   InitializationReentrancy;
  datetime InitializationTimeoutInterval;
  boolean  InitializeAsAdminFirst;
  string   Name;
  datetime OperationTimeoutInterval;
  boolean  PerLocaleInitialization = FALSE;
  boolean  PerUserInitialization = FALSE;
  boolean  Pure = TRUE;
  string   SecurityDescriptor;
  boolean  SupportsExplicitShutdown;
  boolean  SupportsExtendedStatus;
  boolean  SupportsQuotas;
  boolean  SupportsSendStatus;
  boolean  SupportsShutdown;
  boolean  SupportsThrottling;
  datetime UnloadTimeout;
  uint32   Version;
};

成员

__Win32Provider 类包含以下类型的成员:

属性

__Win32Provider类具有以下属性。

ClientLoadableCLSID

数据类型: 字符串

访问类型:读/写

WMI 用于确定是将高性能提供程序加载到客户端进程还是 WMI 进程中的类标识符。 如果提供程序和客户端都位于同一台计算机上,则 WMI 将使用 ClientLoadableCLSID 作为类标识符将提供程序进程内加载到客户端。 当提供程序和客户端位于不同的计算机上时,WMI 会将提供程序进程内加载到 WMI。 WMI 还使用 ClientLoadableCLSID 来支持刷新操作。

有关详细信息,请参阅 注册High-Performance提供程序。

CLSID

数据类型: 字符串

访问类型:读/写

表示提供程序 COM 对象的 CLSID () 类标识符的 GUID。 此 COM 对象必须包含 IWbemProviderInit 接口的实现。

并发

数据类型: sint32

访问类型:读/写

未使用。

DefaultMachineName

数据类型: 字符串

访问类型:读/写

标识要在其中启动提供程序的计算机。 如果提供程序在本地计算机上运行,则为 NULL

Enabled

数据类型: 布尔值

访问类型:读/写

如果 为 TRUE,则此实例已启用,可用于完成客户端请求。

HostingModel

数据类型: 字符串

访问类型:读/写

此属性由 MSFT_ProvidersHostingGroupHostingSpecification 属性中的值组成。 此属性的值指定 WMI 如何加载提供程序及其运行的安全帐户。 有关设置 HostingModel 属性的详细信息,请参阅 提供程序托管和安全性 以及 注册提供程序

ImpersonationLevel

数据类型: sint32

访问类型:读/写

保留。 默认值为零 (0)。

InitializationReentrancy

数据类型: sint32

访问类型:读/写

提供有关序列化信息的标志集。 默认值为零 (0)。

0

必须序列化此提供程序的所有初始化。

1

必须序列化同一命名空间中此提供程序的所有初始化。

2

无需初始化序列化。

InitializationTimeoutInterval

数据类型: datetime

访问类型:读/写

未使用。

InitializeAsAdminFirst

数据类型: 布尔值

访问类型:读/写

TBD

名称

数据类型: 字符串

访问类型:读/写

限定符: 密钥

提供程序名称。

OperationTimeoutInterval

数据类型: datetime

访问类型:读/写

未使用。

PerLocaleInitialization

数据类型: 布尔值

访问类型:读/写

如果 为 TRUE,则当用户使用不同区域设置多次连接到同一命名空间时,会为每个区域设置初始化提供程序。 默认值为 FALSE

PerUserInitialization

数据类型: 布尔值

访问类型:读/写

如果 为 TRUE,则会为每个向提供程序发出请求的 NT LAN Manager (NTLM) 用户初始化提供程序一次。 如果 FALSE (默认) ,则为所有用户初始化提供程序一次。

数据类型: 布尔值

访问类型:读/写

如果为 TRUE,则提供程序同意通过在 WMI 调用其主接口的 Release 方法时在所有未完成的接口点上调用 IUnknown::Release 来准备卸载。 提供程序在 WMI 不正常工作后必须保留为 WMI 的客户端,提供程序应将 Pure 设置为 FALSE。 默认设置为 TRUE。 有关详细信息,请参阅本主题的“备注”部分。

SecurityDescriptor

数据类型: 字符串

访问类型:读/写

安全描述符定义语言 (SDDL) 中的 SD 描述符 (SD) ,用于确定可成功调用 IWbemDecoupledRegistrar:Register for the decoupled 提供程序的用户集。 有关详细信息,请参阅 Windows SDK 的安全部分的安全描述符定义语言主题。 此安全描述符仅用于分离的提供程序,并且不会影响其他提供程序。 有关详细信息,请参阅 在应用程序中合并提供程序

WMI 对使用 IWbemProviderInitIWbemObjectSink 接口的分离提供程序执行访问检查。 如果安全描述符为 NULL,则只有在本地系统、NetworkService、LocalService 帐户下运行的应用程序或服务才能运行分离的提供程序。

以下字符串显示仅由内置管理员运行的分离提供程序。O:BAG:BAD: (A;;0x1;;;BA) ”

有关设置 SecurityDescriptor 属性的详细信息,请参阅 维护 WMI 安全性

SupportsExplicitShutdown

数据类型: 布尔值

访问类型:读/写

未使用。

SupportsExtendedStatus

数据类型: 布尔值

访问类型:读/写

未使用。

SupportsQuotas

数据类型: 布尔值

访问类型:读/写

未使用。

SupportsSendStatus

数据类型: 布尔值

访问类型:读/写

未使用。

SupportsShutdown

数据类型: 布尔值

访问类型:读/写

未使用。

SupportsThrottling

数据类型: 布尔值

访问类型:读/写

未使用。

UnloadTimeout

数据类型: datetime

访问类型:读/写

指定 WMI 允许提供程序在卸载之前保持空闲状态的日期和时间格式。 通常,提供程序请求 WMI 等待不超过 5 分钟。

对于当前版本的 WMI,将忽略此属性的值。 WMI 根据 \root 命名空间内部类中的超时值卸载提供程序。 建议提供程序设置 UnloadTimeout。 有关详细信息,请参阅 卸载提供程序

版本

数据类型: uint32

访问类型:读/写

提供程序的版本。 支持的版本为 1 和 2。 版本 2 增强了对所有关联属性注册(特别是 ImpersonationLevel 属性)的有效性检查。

备注

__Win32Provider类派生自 __Provider

大多数提供程序都可以接受 InitializationReentrancy 属性的默认值。 但是,如果提供程序可以支持单独用户的同时初始化,则可以将此属性设置为 1 (一个) 。 如果需要序列化初始化, 则 InitializationReentrancy 将保持 0 (零) 。 在这两个实例中, PerUserInitialization 设置为 TRUE

纯提供程序或将 Pure 属性设置为 TRUE 的提供程序仅存在于来自应用程序和 WMI 的服务请求中。 大多数提供程序都是纯提供程序。 非pure 提供程序是例外。 非Pure 提供程序在完成服务请求后过渡到客户端的角色。

非纯提供程序的示例是一个推送提供程序,该提供程序开始发出查询,并在 WMI 完成初始化后发出请求。 推送提供程序不有责任在初始化时使用数据更新 CIM 存储库。 更新存储库后,推送提供程序可以等待卸载或转换到客户端的角色。 等待卸载的推送提供程序是纯提供程序。 参与客户端活动的推送提供程序是非纯的。

WMI 必须能够将纯提供程序与非纯提供程序区分开来,以便它可以确定何时可以安全关闭。 WMI 必须等待涉及非纯提供程序的所有操作完成,然后才能安全关闭。

要求

要求
最低受支持的客户端
Windows Vista
最低受支持的服务器
Windows Server 2008
命名空间
所有 WMI 命名空间

另请参阅

__Provider

WMI 系统类

注册提供程序