C# 以编程方式检查我的系统上是否安装了Java 7(jre7)或更高版本

C# 以编程方式检查我的系统上是否安装了Java 7(jre7)或更高版本,c#,C#,我想检查我的机器上是否安装了Java 7或更高版本的Java。我正在使用以下代码查找此项: /// <summary> /// Get the file path of the installed java run time. /// </summary> /// <returns>full path of java run time.</returns> private static string GetJ

我想检查我的机器上是否安装了Java 7或更高版本的Java。我正在使用以下代码查找此项:

    /// <summary>
    /// Get the file path of the installed java run time.
    /// </summary>
    /// <returns>full path of java run time.</returns>
    private static string GetJavaPath()
    {
        RegistryKey javaRuntime = Registry.LocalMachine.OpenSubKey("SOFTWARE\\JavaSoft\\Java Runtime Environment");
        string currentVerion = javaRuntime.GetValue("CurrentVersion").ToString();
        string javaSubVersion = (javaRuntime.OpenSubKey(currentVerion)).GetValue("JavaHome").ToString();
        string filePath = Path.Combine(javaSubVersion, @"bin\javaw.exe");
        return filePath;
    }
//
///获取已安装java运行时的文件路径。
/// 
///java运行时的完整路径。
私有静态字符串GetJavaPath()
{
RegistryKey javaRuntime=Registry.LocalMachine.OpenSubKey(“软件\\JavaSoft\\Java运行时环境”);
字符串currentVerion=javaRuntime.GetValue(“CurrentVersion”).ToString();
字符串javaSubVersion=(javaRuntime.OpenSubKey(currentVerion)).GetValue(“JavaHome”).ToString();
字符串filePath=Path.Combine(javaSubVersion,@“bin\javaw.exe”);
返回文件路径;
}
我需要系统上的所有javaw.exe(java版本)。
请仔细查看。

如果我理解清楚,
HKEY\U LOCAL\U MACHINE\SOFTWARE\JavaSoft\Java运行时环境
将为您提供当前版本,但其他jre版本也可以在
HKEY\U LOCAL\U MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java运行时环境
下检索


请注意,还值得寻找JDK(因为它们嵌入了JRE,并且不一定在上面的键下引用)。您可以在
HKEY\U LOCAL\U MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java开发工具包
HKEY\U LOCAL\U MACHINE\SOFTWARE\JavaSoft\Java开发工具包
中找到它们。更高版本正是jre1.8jre8@C.Champagne-抱歉搞混了。我需要在我的系统上安装所有的java版本。