我需要以编程方式(使用C#)确定系统上是否安装了特定的.NET桌面运行时版本。
一种方法是像这篇文章建议的那样在注册表中检查版本。但是,这只会检索到最新安装的版本。例如,在ASP.NET Core版本中,可以在此处的注册表中找到:SOFTWARE\Microsoft\ASP.NET Core\Shared Framework
官方方式似乎是使用命令“dotnet --list-runtimes”(由Microsoft 在此处记录)。这将需要从应用程序启动cmd进程。
还有其他可能的方法来检索当前安装的.NET桌面运行时版本吗?
一种方法是像这篇文章建议的那样在注册表中检查版本。但是,这只会检索到最新安装的版本。例如,在ASP.NET Core版本中,可以在此处的注册表中找到:SOFTWARE\Microsoft\ASP.NET Core\Shared Framework
System.Runtime.InteropServices.RuntimeInformation.FrameworkDescription;
只会检索应用程序正在运行的框架版本。官方方式似乎是使用命令“dotnet --list-runtimes”(由Microsoft 在此处记录)。这将需要从应用程序启动cmd进程。
还有其他可能的方法来检索当前安装的.NET桌面运行时版本吗?