64bit - update - jdk 32 bits
¿Cómo detecto si Java de 32 bits está instalado en Windows x64, solo mirando el sistema de archivos y el registro? (5)
Necesito determinar si un sistema en particular tiene instalado Java de 32 bits. Estoy realizando una consulta remota que solo me da acceso al sistema de archivos y al registro, por lo que no puedo intentar ejecutar java.exe ni ejecutar ningún código Java.
También quiero asegurarme de detectar tanto IBM como Sun Java, así como cualquier otra distribución, que parezca que coloca cosas en diferentes lugares en el sistema de archivos y en el registro.
Lo mejor que he encontrado es buscar C: / Windows / SysWOW64 / java.exe. ¿Es esta una forma confiable de probar la presencia de Java de 32 bits o hay ciertas versiones que no ponen java.exe en esa carpeta?
Actualización: todavía estoy buscando una respuesta más robusta a esto. Solo para ser claros, no tengo acceso a un indicador de comando. Además, quiero detectar Java sin importar quién es el editor, qué número de versión está instalada y sin importar en qué ruta el usuario eligió instalarla.
C: / Windows / SysWOW64 / java.exe parece cumplir con estos requisitos, pero me encantaría saber si alguien con más conocimientos sabe que cada instalador de Java pondrá ese ejecutable allí.
¿Tienes acceso a la línea de comandos?
Método 1: Símbolo del sistema
Los detalles de la Java instalada en el sistema se pueden determinar ejecutando el siguiente comando java -version
Método 2: Estructura de la carpeta
En caso de que no tenga acceso al símbolo del sistema, determine la carpeta donde se encuentra Java.
32 Bit: C:/Program Files (x86)/Java/jdk1.6.0_30
64 Bit: C:/Program Files/Java/jdk1.6.0_25
Sin embargo, durante la instalación es posible que el usuario pueda cambiar la carpeta de instalación.
Método 3: Registro
También puede ver la versión instalada en el editor de registro.
Ir al editor de registro
Editar -> Buscar
Búsqueda de Java. Obtendrá las entradas de registro para Java.
En la entrada con el nombre:
DisplayVersion
&DisplayVersion
, se muestra la versión java instalada
Esto parece proporcionar la información en Windows:
1.) Abra un símbolo del sistema de Windows.
2.) Teclee: java -XshowSettings: todos y presione ENTER.
3.) Se mostrará mucha información en la ventana de comandos. Desplácese hacia arriba hasta que encuentre la cadena: sun.arch.data.model .
4.) Si dice sun.arch.data.model = 32 , su VM es de 32 bits. Si dice sun.arch.data.model = 64 , su VM es de 64 bits.
Probé los instaladores de 32 bits y 64 bits de Oracle e IBM Java en Windows, y la presencia de C: / Windows / SysWOW64 / java.exe parece ser una forma confiable de determinar que Java de 32 bits está disponible . No he probado versiones anteriores de estos instaladores, pero al menos parece que debería ser una forma confiable de probar, para las versiones más recientes de Java.
Si no es Java de Oracle, es posible que no pueda decirlo. Cuando instalo Oracle Java de 64 bits, los archivos van a C: / Archivos de programa / Java, pero cuando instalo una versión de 32 bits, se establecen de forma predeterminada en C: / Archivos de programa (x86) / Java. Por supuesto, la persona que instaló Java podría haber anulado esos valores predeterminados.
Verifique esta clave para máquinas Windows de 32 bits y 64 bits.
HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft/Java Runtime Environment
y esto para Windows 64 bits con 32 Bits JRE.
HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/JavaSoft/Java Runtime Environment
Esto funcionará para el oracle-sun JRE.