Comment détecter si Java 32 bits est installé sur Windows x64, en regardant uniquement le système de fichiers et le registre?


Je dois déterminer si un système particulier a Java 32 bits installé. Je fais une requête distante qui me donne seulement accès au système de fichiers et au registre, donc je ne peux pas essayer d'exécuter java.exe, ou exécuter n'importe quel code Java.

Je veux aussi m'assurer de détecter IBM et Sun Java, ainsi que toutes les autres distributions, qui semblent mettre les choses à différents endroits sur le système de fichiers et dans le registre.

Le meilleur que j'ai trouvé est de vérifier C:\Windows\SysWOW64\java.EXE. Est-ce un moyen fiable de tester la présence de Java 32 bits, ou existe-t-il certaines versions qui ne mettront pas java.exe dans ce dossier?

Mise à jour: Je cherche toujours une réponse plus robuste à cela. Juste pour être clair, je n'ai pas accès à une invite de commande. De plus, je veux détecter Java, quel que soit l'éditeur, le numéro de version installé et quel que soit le chemin sur lequel l'utilisateur a choisi de l'installer.

C:\Windows\SysWOW64\java.exe semble correspondre à ces exigences, mais j'aimerais une confirmation de quelqu'un de plus compétent que chaque installateur Java y mettra en effet cet exécutable.

Author: Chris Vasselli, 2012-01-11

5 answers

Cela semble fournir les informations sur Windows:

1.) Ouvrez une invite de commande Windows.

2.) Entrez: java-XshowSettings:all et appuyez sur ENTRÉE.

3. Beaucoup d'informations seront affichées sur la fenêtre de commande. Faites défiler jusqu'à ce que vous trouviez la chaîne: sun.Arch.données.le modèle.

4.) S'il est écrit sun.Arch.données.model = 32 , votre machine virtuelle est 32 bits. S'il est écrit soleil.Arch.données.model = 64 , votre machine virtuelle est 64 bits.

 27
Author: Aaron Dellutri, 2016-07-01 21:26:00

Avez-vous accès à l'invite de commande ?

Méthode 1 : Invite De Commande

Les spécificités du Java installé sur le système peuvent être déterminées en exécutant la commande suivante java-version

Méthode 2 : Structure De Dossier

Dans le cas où vous n'avez pas accès à l'invite de commande, puis déterminer le dossier où Java.

32 Bits : C:\Program Files (x86)\Java\jdk1.6.0_30

64 Bits : C:\Program Files\Java\jdk1.6.0_25

Cependant, lors de l'installation, il est possible que l'utilisateur peut changer le dossier d'installation.

Méthode 3 : Registre

Vous pouvez également voir la version installée dans l'éditeur de registre.

  1. Aller à l'éditeur du registre

  2. Modifier - > Trouver

  3. Rechercher Java. Vous obtiendrez les entrées de registre pour Java.

  4. Dans l'entrée avec nom : DisplayName & DisplayVersion, l'installation de java version est affichée

 10
Author: Kakarot, 2015-01-14 20:27:05

Vérifiez cette clé pour les machines Windows 32 bits et 64 bits.

 HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment

Et ceci pour Windows 64 bits avec 32 Bits JRE.

 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Runtime Environment

Cela fonctionnera pour le JRE oracle-sun.

 3
Author: Daniel De León, 2013-06-11 08:07:27

Si ce n'est pas Java d'Oracle, vous ne pourrez peut-être pas le dire. Lorsque j'installe Oracle Java 64 bits, les fichiers vont dans C:\Program Files \ Java, mais lorsque j'installe une version 32 bits, ils sont par défaut C:\Program Fichiers(x86) \ Java à la place. Bien sûr, la personne qui a installé Java aurait pu remplacer ces valeurs par défaut.

 1
Author: , 2012-01-11 19:22:05

J'ai essayé les installateurs 32 bits et 64 bits d'Oracle et IBM Java sur Windows, et la présence de C:\Windows\SysWOW64\java.exe semble être un moyen fiable de déterminer que Java 32 bits est disponible. Je n'ai pas testé les anciennes versions de ces installateurs, mais cela semble au moins être un moyen fiable de tester, pour les versions les plus récentes de Java.

 0
Author: Chris Vasselli, 2012-02-23 03:50:21