// Copyright (c) 1997-2003 Microsoft Corporation, All Rights Reserved #pragma autorecover #pragma classflags(64) #pragma namespace("\\\\.\\Root") Instance of __Namespace { Name = "Policy"; }; #pragma namespace("\\\\.\\Root\\Policy") Instance of __Win32Provider as $PolicSOM { Name = "PolicSOM"; ClsId = "{AAEAE72F-0328-4763-8ECB-23422EDE2DB5}"; ImpersonationLevel = 1; PerUserInitialization = "FALSE"; HostingModel = "NetworkServiceHost"; }; Instance of __Win32Provider as $PolicStatus { Name = "PolicStatus"; ClsId = "{69D76D1B-B12E-4913-8F48-671B90195A2B}"; ImpersonationLevel = 1; PerUserInitialization = "FALSE"; HostingModel = "NetworkServiceHost"; }; Instance of __InstanceProviderRegistration { Provider = $PolicSOM; SupportsGet = "TRUE"; SupportsPut = "TRUE"; SupportsDelete = "TRUE"; QuerySupportLevels = {"WQL:UnarySelect"}; }; Instance of __InstanceProviderRegistration { Provider = $PolicStatus; SupportsGet = "TRUE"; SupportsPut = "FALSE"; SupportsDelete = "FALSE"; }; Instance of __MethodProviderRegistration { Provider = $PolicSOM; }; [Abstract,Locale(1033) : ToInstance,UUID("{D157AAFD-D42F-45cd-B30B-F67CF152C9F9}")] class MSFT_Rule { [NOT_NULL,write] string QueryLanguage; [NOT_NULL,write] string TargetNameSpace; [NOT_NULL,write] string Query; }; [Dynamic,Provider("PolicSOM"),Locale(1033) : ToInstance,UUID("{AE7B614F-AFE0-41ea-807E-3BD3F83CAF66}")] class MSFT_SomFilter { [key,write,MaxLen(38)] string ID; [key,write] String Domain; [write, NOT_NULL] string Name; [write] String Description; [write,NOT_NULL] MSFT_Rule Rules[]; [Implemented, bypass_getobject] Uint32 Evaluate(); [Implemented,Static] Uint32 BatchEvaluate([IN] MSFT_SomFilter Ref filters[],[OUT] Uint32 results[]); [write] String Author; [write] String SourceOrganization; [write] DateTime ChangeDate; [write] DateTime CreationDate; }; [Dynamic, Provider("PolicStatus"), Locale(1033)] class MSFT_SomFilterStatus { [key,read] String Domain; [read] Boolean SchemaAvailable; [read] Boolean ContainerAvailable; }; class SomFilterPutStatus : __ExtendedStatus { [read] Uint32 RuleValidationResults[]; }; #pragma DeleteInstance("__Namespace.Name='History'", NOFAIL) #pragma DeleteInstance("__Win32Provider.Name=\"PolicGpo\"", NOFAIL) #pragma DeleteInstance("__InstanceProviderRegistration.provider=\"\\\\\\\\.\\\\Root\\\\Policy:__Win32Provider.Name=\\\"PolicTempl\\\"\"", NOFAIL) #pragma DeleteInstance("__Win32Provider.Name=\"PolicRange\"", NOFAIL) #pragma DeleteInstance("__MethodProviderRegistration.provider=\"\\\\\\\\.\\\\Root\\\\Policy:__Win32Provider.Name=\\\"PolicRange\\\"\"", NOFAIL) #pragma DeleteInstance("__Win32Provider.Name=\"PolicTempl\"", NOFAIL) #pragma DeleteInstance("__MethodProviderRegistration.provider=\"\\\\\\\\.\\\\Root\\\\Policy:__Win32Provider.Name=\\\"PolicTempl\\\"\"", NOFAIL) #pragma DeleteInstance("__InstanceProviderRegistration.provider=\"\\\\\\\\.\\\\Root\\\\Policy:__Win32Provider.Name=\\\"PoliceTempl\\\"\"", NOFAIL) #pragma DeleteInstance("__Win32Provider.Name=\"PolicType\"", NOFAIL) #pragma DeleteInstance("__MethodProviderRegistration.provider=\"\\\\\\\\.\\\\Root\\\\Policy:__Win32Provider.Name=\\\"PolicType\\\"\"", NOFAIL) #pragma DeleteInstance("__InstanceProviderRegistration.provider=\"\\\\\\\\.\\\\Root\\\\Policy:__Win32Provider.Name=\\\"PolicType\\\"\"", NOFAIL) #pragma DeleteClass("MSFT_RangeParam", NOFAIL) #pragma DeleteClass("MSFT_PolicyTemplate", NOFAIL) #pragma DeleteClass("MSFT_PolicyType", NOFAIL) #pragma DeleteClass("MSFT_WMIGPO", NOFAIL) #pragma autorecover #pragma classflags(64) #pragma namespace("\\\\.\\Root\\Policy") instance of __namespace{ name="ms_409";}; #pragma namespace("\\\\.\\Root\\Policy\\ms_409") [Description("Defines a single rule in a SOM, expressed as a query") : Amended ToSubclass,AMENDMENT, LOCALE(0x409)] class MSFT_Rule { [Description("Language in which query is expressed") : Amended ToSubclass] string QueryLanguage; [Description("Namespace in which to evaluate query") : Amended ToSubclass] string TargetNameSpace; [Description("Query of interest") : Amended ToSubclass] string Query; }; [Description("Provides a list of rules, expressed as queries which are evaluated on target machine") : Amended ToSubclass,AMENDMENT, LOCALE(0x409)] class MSFT_SomFilter { [key,Description("Unique identifier for this instance, expected to be a GUID in registry format") : Amended ToSubclass] string ID; [key,Description("Domain of this object, in DNS format: \"redmond.corp.microsoft.com\"") : Amended ToSubclass] String Domain; [Description("A user-friendly name for this SOM Filter") : Amended ToSubclass] string Name; [Description("Descriptive text describing this SOM Filter") : Amended ToSubclass] String Description; [Description("Rules to be evaluated") : Amended ToSubclass] MSFT_Rule Rules[]; [Description("Determines whether the queries expressed in Rules apply to this machine. Returns S_OK (0) if all queries expressed in rules return results; S_FALSE (1) if they do not; and an applicable WMI error code if an error occurs.") : Amended ToSubclass] Uint32 Evaluate(); [Description("Evaluates a list of SOMs, returns array result codes matching result of evaluating each") : Amended ToSubclass] Uint32 BatchEvaluate([IN] MSFT_SomFilter Ref filters[],[OUT] Uint32 results[]); [Description("Originator of this SOMFilter") : Amended ToSubclass] String Author; [Description("Author's organization") : Amended ToSubclass] String SourceOrganization; [Description("Last time this object was updated") : Amended ToSubclass] DateTime ChangeDate; [Description("Time that this object was created") : Amended ToSubclass] DateTime CreationDate; }; #pragma DeleteClass("MSFT_RangeParam", NOFAIL) #pragma DeleteClass("MSFT_PolicyTemplate", NOFAIL) #pragma DeleteClass("MSFT_PolicyType", NOFAIL) #pragma DeleteClass("MSFT_WMIGPO", NOFAIL)