在x64 Windows中有一种方法可以运行Runtime.exec()进程,避免“注册表重定向”

时间:2010-03-10 12:28:14

标签: java registry wow64 runtime.exec

我们的应用程序以jvm 32位运行,即使在Windows x64中也是如此。现在,在某些时候,我需要访问一些注册表值,例如HKEY_LOCAL_MACHINE / SOFTWARE / mycomp。

我是通过执行

来做到这一点的
cmd /C reg query HKEY_LOCAL_MACHINE\SOFTWARE\mycop
从Runtime.exec()获取

并解析输出。这在Windows 32b上运行时工作正常,问题是在x64上,我找不到密钥,因为我运行的shell是32位进程,由于Registry Redirection我会得到密钥,如果它在HKEY_LOCAL_MACHINE /软件/ wow6432Node / mycop

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

如果有人试图这样做......我无法做到这一点,不得不采用我的方案支持的另一种方法。