我正在尝试使用在Windows 7 64位上以JRE 1.7 32位运行的Java代码加载已编译的32位或64位DLL文件。该DLL分别命名为RecorderWindowsIA32.dll(32位)或RecorderWindowsAMD64.dll(64位)。
两个都恭敬地说:
java.lang.UnsatisfiedLinkError:RecorderWindowsIA32(。\ RecorderWindowsIA32.dll不是有效的Win32应用程序。)
java.lang.UnsatisfiedLinkError:RecorderWindowsAMD64(。\ RecorderWindowsAMD64.dll不是有效的Win32应用程序。)
现在,如果我在Windows 7 64bit上使用1.7 JDK 64位(我还没试过JRE 64位),我的代码可以加载并使用64位RecorderWindowsAMD64.dll。
我没有设置32位机器和32位JRE来测试是否会加载RecorderWindowsIA32.dll。
所以我想我的问题是,在Windows 7 64位上运行32位JRE的Java加载/使用DLL是不可能的吗?如果不是,我做错了什么?我的机器上安装了多个Javas。可能有些路径交叉了吗?