This is a java wrapper for the Windows functions that operate on the registry. Some of the methods available in this library include read/write operations as well as the ability to search the registry for specific values. JRE 1.5 or higher required.
Project Admins:
I use jRegistry 1.8.1 with Windows 10 and Windows Server 2016.
The function "exportKey" throws the exception:
"REGEDIT5 is not supported on this version of Windows.".
When I look at the sourcecode its clear:
Line 90 of "RegistryExporter.java" says:
"private static final boolean IS_2000 = System.getProperty("os.version").compareTo("5.0") >= 0;"
System.getProperty("os.version") delivers "10.0"
compareTo("5.0") delivers -4
so, IS_2000 is false.
Windows 10 and Windows Server 2016 are using the REGEDIT5 format to export registry keys.
Line 90 should say:
"private static final boolean IS_2000 = Float.parseFloat(System.getProperty("os.version")) >= Float.parseFloat("5.0");"
Dirk
Thanks for catching this error. I'll take a look at it and see what I can do to make it work.
Version 1.8.2 is out now which should resolve any issues found on Windows 10 and Windows Server 16.
Hi!
I am using the new version of jRegistry (1.8.2) with Windows 10.
When I try to use the function:
public void view64BitRegistry(boolean view64)
from class:
RegistryKey
it seems like if it is not work.
Lines 5363-5369 say
public void view64BitRegistry(boolean view64) {
String ver = System.getProperty("os.version");
if (ver.compareTo("5.0") <= 0)
this.view64 = 0;
else
this.view64 = (view64 ? KEY_WOW64_64KEY : KEY_WOW64_32KEY);
}
The line
if (ver.compareTo("5.0") <= 0)
always returns value -4 .
I think that this bug is similar to the previous bug comment.
Thanks for maintain good software.
Manuel.
Manuel,
Thanks for bringing this up. I'll take a look and let you know when it has been patched.
Version 1.8.3 is out which should resolve this issue on Windows 10.