some of my code was failing in x64, I start digging and this is due to some code that calls native stuff via Runtime.getRuntime().exec()...
But this code is probably some years old, it does not take into account newer OS, and some of the code looks like this:
String osName = System.getProperty("os.name");
if (osName.equals("Windows NT") || osName.equals("Windows 2000") || osName.equals("Windows XP")) {
cmd = new String[3];
cmd[0] = WINDOWS_NT_2000_COMMAND_1;
cmd[1] = WINDOWS_NT_2000_COMMAND_2;
cmd[2] = command;
} else if (osName.equals("Windows 95") || osName.equals("Windows 98") || osName.equalsIgnoreCase("Windows ME")) {
cmd = new String[3];
cmd[0] = WINDOWS_9X_ME_COMMAND_1;
cmd[1] = WINDOWS_9X_ME_COMMAND_2;
cmd[2] = command;
I would like to fix this for all new OSs (w2008, windows 7, ...), but I dont have access to a host of each kind, and I don't want to install in a VM just to see the value, does anybody know of some list somewhere? have not find any yet.
EDIT: I would need: windows 7, windows 2003, windows 2008, windows 2008R2 Also, I am no the 1.6u18 so no worries about the bug some guys mentioned.