__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_ProvidersHostingGroup 和 HostingSpecification 属性中的值组成。 此属性的值指定 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 对使用 IWbemProviderInit 和 IWbemObjectSink 接口的分离提供程序执行访问检查。 如果安全描述符为 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 命名空间 |