Microsoft .NET

This topic was edited by a BMC Contributor and has not been approved.  More information.

Related topics
Product name
Publisher page
  • [Microsoft|Microsoft]
Application Deployment Software
TKU 2022-Sep-1
More information
Publisher link

Product Description

Microsoft .NET is a software development framework.

Software Pattern Summary

Product Component

OS Type


Pattern Depth

Microsoft .NET Framework


Package, Registry

Key based on version, architecture (if applicable), type and host key

Microsoft .NET Core

Active, Package

Microsoft .NET Common Language Runtime


Platforms Supported by Software Pattern

Microsoft .NET runs on Windows only.  So this pattern supports Windows only.

Identification & Versioning

All patterns trigger on all Windows hosts.

Microsoft .NET Framework


We get a list of versions of Microsoft .NET Framework installed on the system from the following PowerShell command: RuntimeInformation.FrameworkDescription


We get a list of Microsoft .NET Framework versions installed on the system from the following registry keys (this follows the advice in Microsoft documentation):

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\\v4\\Full\\Release (covers versions 4.5 to 4.8)
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\\v4\\Full\\Version (covers version 4.0)
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\\<version_dir>\\Install (for each version 1.1, 2.0, 3.0, 3.5)
  • HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\{78705f0d-e8db-4b2d-8193-982bdda15ecd}\Version (covers version 1.0).

For versions between 1.1 and 4.0, we will only create a RuntimeEnvironment node if there is a matching Microsoft .NET package with the same version.  If a version is uninstalled the old registry key may remain, but the old package version is less likely to.


The pattern with create RuntimeEnvironment for every version that has a package name that starts “Microsoft .NET Framework”.

Microsoft .NET Core

The pattern creates a RuntimeEnvironment node for every .NET Core version listed in command %programfiles%\dotnet\dotnet.exe --info (%programfiles% is a system environment variable).

The pattern also created a RuntimeEnvironment node for every version that has a package name that starts “Microsoft .NET Core Runtime”.

Microsoft .NET Common Language Runtime

The pattern creates a RuntimeEnvironment node for every .NET Core version listed in powershell command $PSVersionTable.CLRVersion.

Application Model Produced by Software Pattern


The pattern creates RuntimeEnvironment nodes for the following types:

  • Microsoft .NET Framework is a proprietary software framework developed by Microsoft that runs primarily on Microsoft Windows (see wikipedia)
  • Microsoft .NET Core “is a free and open-source, managed computer software framework for Windows, Linux, and macOS operating systems. It is a cross-platform successor to .NET Framework” (see more details in Wikipedia).
  • Microsoft .NET Common Language Runtime - each version of .NET Framework contains the common language runtime (CLR) (see Microsoft documentation).

SI Depth

The pattern creates a RuntimeEnvironment node for every version of every time it finds.  It adds the architecture to the key if applicable.

Relationship Creation

The pattern creates a dependency relationship from the CLR RE to the Framework RE on the same host (the CLR RE in the dependant).

A relationship will only be created if these version conditions match. More details are provided in the Microsoft document documentation.

CLR Version

.NET Framework version




2.x or 3.x





Created by: [Rebecca Shalfield|User Rebecca Shalfield] 11 July 2008
Updated by: [Nikola Vukovljak|User Nikola Vukovljak] 11 Jun 2013

Was this page helpful? Yes No Submitting... Thank you