Discover Windows 10 and above Operating System

Microsoft.Windows.Client.Win10.OperatingSystem.Discovery (Discovery)

This rule discovers Windows 10 and above Operating System.

Knowledge Base article:

Summary

This Discovery Rule discovers and populates Windows 10 and above class named “Windows 10 and above Operating System” with instances of Windows 10 and above Operating Systems.

Element properties:

TargetMicrosoft.Windows.Client.Computer
EnabledTrue
Frequency86400
RemotableFalse

Object Discovery Details:

Discovered Classes and their attribuets:

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.Client.Win10.Discovery.DataSource Default

Source Code:

<Discovery ID="Microsoft.Windows.Client.Win10.OperatingSystem.Discovery" Enabled="true" Target="Windows!Microsoft.Windows.Client.Computer">
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID="Microsoft.Windows.Client.Win10.OperatingSystem"/>
</DiscoveryTypes>
<!--<DataSource ID="DiscoveryDataSource" TypeID="Windows!Microsoft.Windows.FilteredRegistryDiscoveryProvider">
<ComputerName>$Target/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<RegistryAttributeDefinitions>
<RegistryAttributeDefinition>
<AttributeName>WindowsCurrentVersion</AttributeName>
<Path>SOFTWARE\Microsoft\Windows NT\CurrentVersion\CurrentVersion</Path>
<PathType>1</PathType>
<AttributeType>1</AttributeType>
</RegistryAttributeDefinition>
</RegistryAttributeDefinitions>
<Frequency>86400</Frequency>
<ClassId>$MPElement[Name="Microsoft.Windows.Client.Win10.OperatingSystem"]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name="Windows!Microsoft.Windows.Computer"]/PrincipalName$</Name>
<Value>$Target/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</Value>
</Setting>
</Settings>
</InstanceSettings>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>Values/WindowsCurrentVersion</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>6.2</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</DataSource>-->
<DataSource ID="DS" TypeID="Microsoft.Windows.Client.Win10.Discovery.DataSource">
<IntervalSeconds>86400</IntervalSeconds>
<DiscoveredClassId>$MPElement[Name="Microsoft.Windows.Client.Win10.OperatingSystem"]$</DiscoveredClassId>
</DataSource>
</Discovery>