Averiguar versión de Java instalada en VB.NET y C#

Como averiguar versión de Java instalada en VB.NET y CS

En este artículo se puede averiguar o saber la versión de JAVA que tenemos instalada en Windows usando VB.NET o C#

Estamos trabajando actualmente en un administrador de mods, usuarios y otras cosillas más para Minecraft, ojo de manera no oficial, pero con mucho cariño.

Unos de los problemas planteados es averiguar en Windows, si esta instalado o no la maquina Java y que versión tiene la misma, entonces como buenos hackers emprendimos la búsqueda por la web a ver si alguien más ya había resuelto el dilema y vaya sorpresa que no hay una solución bien implementada o que no carezca de posibles fallos dada la popularidad de este lenguaje de programación. Es por ello que decidimos entonces escribir algo al respecto.

Java se ofrece en dos versiones principales las cuales se instalan de acuerdo a la orden del usuario de la computadora. Estas son:

Java Runtime Enviroment: contiene solo lo necesario para la ejecución de programas JAVA.

Java Developent Enviroment: contiene al JRE y el entorno de desarrollo para nuevos programas JAVA.

Es muy importante tener en cuenta esto para verificar el tipo y la versión de Java que tenemos instalada.

Otra cosa interesante es saber la ubicación de la maquina JAVA. Muchos se preguntarán ¿por qué? Es bastante simple con el JDE no tenemos problemas debido a que se registra la maquina JAVA dentro de las variables de entorno de Windows y podemos ejecutar java.exe en cualquier parte del árbol de directorios.

Caso contrario ocurre con el JRE, en donde solo se instala la maquina JAVA y se registra lo mínimo para su ejecución por lo que para ejecutar el programa necesitamos llamarlo directamente desde la ruta de instalación.

Ya dicho todo esto, como acostumbramos en Intarcesoft aquí les mostramos las líneas de códigos escritas en C# y en VB.NET:

En código VB.NET

Const JAVA_JDK As String = "SOFTWAREJavaSoftJava Development Kit"
Const JAVA_JRE As String = "SOFTWAREJavaSoftJava Runtime Environment"
'''
''' Regresa la información completa de la versión de Java instalada en una cadena de texto
'''

''' tipo | version | carpeta
'''
Private Function GetJavaInfo() As String

Dim
Version As String, JREInstalled As Boolean
Dim
CheckJavaPath = Function(RJavaKey As String) ( _
Microsoft.Win32.Registry. _
LocalMachine.OpenSubKey(RJavaKey,
False).GetValue("JavaHome") _
)

Dim CheckJavaVersion = Function(RJavaKey As String) ( _
Microsoft.Win32.Registry. _
LocalMachine.OpenSubKey(RJavaKey,
False).GetValue("CurrentVersion") _
)

Try
Version = CheckJavaVersion(JAVA_JRE).ToString
JREInstalled =
True
Catch
Try
: Version = CheckJavaVersion(JAVA_JDK).ToString
Catch : Version = ""
End Try
End Try

If
Version <> "" Then
If
JREInstalled Then
Return
"JRE" & "|" & Version & "|" & CheckJavaPath(JAVA_JRE & Version).ToString
Else
Return
"JDK" & "|" & Version & "|" & CheckJavaPath(JAVA_JDK & Version).ToString
End If
Else
Return
""
End If

End Function

En código C#

private static string GetJavaInfo()
{
CheckKeyJava CheckJavaPath = RJavaKey => (string)Registry.LocalMachine.OpenSubKey(RJavaKey, false).GetValue("JavaHome");
CheckKeyJava CheckJavaVersion = s => (string)Registry.LocalMachine.OpenSubKey(s, false).GetValue("CurrentVersion");

string Version;
bool JREInstalled = false;

try
{
Version = CheckJavaVersion(JAVA_JRE).ToString();
JREInstalled =
true;
}
catch
{
try
{
Version = CheckJavaVersion(JAVA_JDK).ToString();
}
catch
{
Version =
"";
}
}

string
GetJavaInfo;
if (Version != "")
{
if (JREInstalled)
{
GetJavaInfo =
"JRE|" + Version + "|" + CheckJavaPath(JAVA_JRE + Version).ToString();
}
else
{
GetJavaInfo =
"JDK|" + Version + "|" + CheckJavaPath(JAVA_JDK + Version).ToString();
}
}
else
{
GetJavaInfo =
"";
}
return GetJavaInfo;
}

Como pueden ver es un código simple y fácil de entender e implementar. La salida de la función es una cadena de texto delimitada por “|” así que con llamar a la función “Split“ se pueden obtener los resultados por separado.

Si tienen alguna duda o pregunta pueden hacerla debajo en la sección de preguntas.

Escrito por:

Elimar García

08/12/2017

Siguenos en nuestras redes Sociales


 NOTA: No olvides seguirnos en nuestras redes sociales de facebook y twitter para que formes parte de nuestra comunidad y recibas la notificacion cada vez que publiquemos algo nuevo, asi no te perderas de nada.

Grado 
10/12/2017

Me gusto

Lo comparto. jejejeje

Grado 
09/12/2017

Excelente

GRAN APORTE

Escribe tu comentario

Escribe tu opinión

Como averiguar versión de Java instalada en VB.NET y CS

Como averiguar versión de Java instalada en VB.NET y CS

En este artículo se puede averiguar o saber la versión de JAVA que tenemos instalada en Windows usando VB.NET o C#

Haz una pregunta

No se requiere registro

Si luego de leer nuestro articulo aun tiene dudas, puede hacer su pregunta utilizando el siguiente formulario.

(Opcional)
*(Requerido para ser notificado cuando la respuesta este disponible)

Si el enlace de descarga redirige a otro producto que no es el descrito en el artículo o está roto, reportarlo usando nuestro

 FORMULARIO DE REPORTE

MásArtículos