您是否可以编写Java代码来检查本地Internet Explorer的版本

neo*_*neo 6 java internet-explorer

基本上,我只需要编写一个简单的java程序来检测我本地安装的Internet Explorer的版本.

有javascript代码,但它在您的浏览器中运行.我想要的是一些这样的代码:

public class VersionTest
{
   public static void main(String[] args)
   {    System.out.println("you IE Version is:" + getIEVersion());
   }

   public static String getIEVersion()
   {   //implementation that goes out and find the version of my locally installed IE
   }
}
Run Code Online (Sandbox Code Playgroud)

我怎么做?谢谢

Ran*_*Rag 4

您可以使用Internet Explorer Registry Entryfor 版本。您可以使用RuntimeReg Query类从 java执行。Reg Query 是一个在 Windows 中查询注册表项的命令行工具。

Process p = Runtime.getRuntime().exec("reg query \"HKLM\\Software\\Microsoft\\Internet Explorer\" /v Version");
Run Code Online (Sandbox Code Playgroud)

完整代码:

ArrayList<String> output = new ArrayList<String>()
Process p = Runtime.getRuntime().exec("reg query \"HKLM\\Software\\Microsoft\\Internet Explorer\" /v Version");
BufferedReader stdInput = new BufferedReader(new InputStreamReader(p.getInputStream()),8*1024);
BufferedReader stdError = new BufferedReader(new InputStreamReader(p.getErrorStream()))
String s = null;
System.out.println("Here is the standard output of the command:\n");
while ((s = stdInput.readLine()) != null)
output.add(s)

String internet_explorer_value = (output.get(2));
String version = internet_explorer_value.trim().split("   ")[2];
System.out.println(version);
Run Code Online (Sandbox Code Playgroud)

输出=9.0.8112.16421

reg query我的命令提示符上的输出

HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer

版本 REG_SZ 9.0.8112.16421