Microsoft Application Virtualization Server Discovery

Microsoft.AppVirtualization.Server.45.VirtualApplicationServer.Discovery (Discovery)

Knowledge Base article:

You can discover Microsoft Application Virtualization Servers installed in the enterprise by running the discovery mechanism. This discovery mechanism checks for the presence of specific registry values that exist if Microsoft Application Virtualization Server is installed on a machine. This discovery checks for version 4.5 of Microsoft Application Virtualization Server only.

Element properties:

TargetMicrosoft.Windows.Server.Computer
EnabledTrue
Frequency3600
RemotableFalse

Object Discovery Details:

Discovered Classes and their attribuets:

Member Modules:

ID Module Type TypeId RunAs 
VirtualApplicationDS DataSource Microsoft.Windows.FilteredRegistryDiscoveryProvider Default

Source Code:

<Discovery ID="Microsoft.AppVirtualization.Server.45.VirtualApplicationServer.Discovery" Target="Windows!Microsoft.Windows.Server.Computer" Remotable="true" Enabled="true">
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID="Microsoft.AppVirtualization.Server.45.VirtualApplicationServer">
<Property TypeID="Microsoft.AppVirtualization.Server.45.SoftGridServerRole" PropertyID="RoleType"/>
<Property TypeID="Microsoft.AppVirtualization.Server.45.SoftGridServerRole" PropertyID="LogFile"/>
<Property TypeID="Microsoft.AppVirtualization.Server.45.SoftGridServerRole" PropertyID="ContentDirectory"/>
<Property TypeID="Microsoft.AppVirtualization.Server.45.SoftGridServerRole" PropertyID="Version"/>
<Property TypeID="Microsoft.AppVirtualization.Server.45.VirtualApplicationServer" PropertyID="SQLServerName"/>
<Property TypeID="Microsoft.AppVirtualization.Server.45.VirtualApplicationServer" PropertyID="DatabaseName"/>
<Property TypeID="System!System.Entity" PropertyID="DisplayName"/>
</DiscoveryClass>
</DiscoveryTypes>
<DataSource ID="VirtualApplicationDS" TypeID="Windows!Microsoft.Windows.FilteredRegistryDiscoveryProvider">
<ComputerName>$Target/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<RegistryAttributeDefinitions>
<RegistryAttributeDefinition>
<AttributeName>SoftgridVersion</AttributeName>
<Path>SOFTWARE\Microsoft\SoftGrid\4.5\Server\Version</Path>
<PathType>1</PathType>
<AttributeType>1</AttributeType>
</RegistryAttributeDefinition>
<RegistryAttributeDefinition>
<AttributeName>SoftGridLogFile</AttributeName>
<Path>SOFTWARE\Microsoft\SoftGrid\4.5\Server\SOFTGRID_LOG_FILE</Path>
<PathType>1</PathType>
<AttributeType>1</AttributeType>
</RegistryAttributeDefinition>
<RegistryAttributeDefinition>
<AttributeName>SoftGridContentDirectory</AttributeName>
<Path>SOFTWARE\Microsoft\SoftGrid\4.5\Server\SOFTGRID_CONTENT_DIR</Path>
<PathType>1</PathType>
<AttributeType>1</AttributeType>
</RegistryAttributeDefinition>
<RegistryAttributeDefinition>
<AttributeName>SoftGridSqlServer</AttributeName>
<Path>SOFTWARE\Microsoft\SoftGrid\4.5\Server\SQLServerName</Path>
<PathType>1</PathType>
<AttributeType>1</AttributeType>
</RegistryAttributeDefinition>
<RegistryAttributeDefinition>
<AttributeName>SoftGridDatabase</AttributeName>
<Path>SOFTWARE\Microsoft\SoftGrid\4.5\Server\SQLDatabaseName</Path>
<PathType>1</PathType>
<AttributeType>1</AttributeType>
</RegistryAttributeDefinition>
</RegistryAttributeDefinitions>
<Frequency>3600</Frequency>
<ClassId>$MPElement[Name="Microsoft.AppVirtualization.Server.45.VirtualApplicationServer"]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name="Windows!Microsoft.Windows.Computer"]/PrincipalName$</Name>
<Value>$Target/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.AppVirtualization.Server.45.SoftGridServerRole"]/RoleType$</Name>
<Value>Microsoft Application Virtualization Management Server</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="System!System.Entity"]/DisplayName$</Name>
<Value>$Target/Property[Type="Windows!Microsoft.Windows.Computer"]/NetbiosComputerName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.AppVirtualization.Server.45.SoftGridServerRole"]/LogFile$</Name>
<Value>$Data/Values/SoftGridLogFile$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.AppVirtualization.Server.45.SoftGridServerRole"]/ContentDirectory$</Name>
<Value>$Data/Values/SoftGridContentDirectory$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.AppVirtualization.Server.45.VirtualApplicationServer"]/SQLServerName$</Name>
<Value>$Data/Values/SoftGridSqlServer$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.AppVirtualization.Server.45.VirtualApplicationServer"]/DatabaseName$</Name>
<Value>$Data/Values/SoftGridDatabase$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.AppVirtualization.Server.45.SoftGridServerRole"]/Version$</Name>
<Value>$Data/Values/SoftgridVersion$</Value>
</Setting>
</Settings>
</InstanceSettings>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">Values/SoftgridVersion</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>4.5.</Pattern>
</RegExExpression>
</Expression>
</DataSource>
</Discovery>