2
1
I've bought a dictionary which came with a software version of the dictionary. Unfortunately, while this installs on both my Windows Vista and Windows 7 PCs, it will crash when I run it on Windows 7 (but not on Vista).
Is it possible to install some Windows Vista compatibility DLLs which will make it possible to run the dictionary software EXE on Windows 7 without having to install a Windows Vista instance inside VirtualBox?
(as an aside, the software runs on a stock version of Windows 7 in virtualbox without my Sony Vaio added customizations. is there then perhaps some other way to solve the problem without using virtualbox (whose disk images are occupying too much space on my small hard drive)?
!SESSION 2014-09-21 11:11:54.458
eclipse.buildId=unknown
java.version=1.7.0_11
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_EN
Command-line arguments: -os win32 -ws win32 -arch x86
!ENTRY org.eclipse.osgi 2014-09-21 11:11:55.677
!MESSAGE Application error
!STACK 1 java.lang.UnsatisfiedLinkError:
C:\Users\Neil\.edpan\hoepli\picchi\org.eclipse.osgi\bundles\39\1\.cp\swt-win32-3139.dll:
Can't load IA 32-bit .dll on a AMD 64-bit platform
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary1(ClassLoader.java:1939)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1864)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1838)
at java.lang.Runtime.loadLibrary0(Runtime.java:845)
at java.lang.System.loadLibrary(System.java:1084)
at org.eclipse.swt.internal.Library.loadLibrary(Library.java:123)
at org.eclipse.swt.internal.win32.OS.<clinit>(OS.java:18)
at org.eclipse.swt.widgets.Display.<clinit>(Display.java:125)
at org.eclipse.ui.internal.Workbench.createDisplay(Workbench.java:381)
at org.eclipse.ui.PlatformUI.createDisplay(PlatformUI.java:155)
at edPan.ui.application.Application.run(Application.java:18)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334)
at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
at org.eclipse.core.launcher.Main.run(Main.java:973)
at org.eclipse.core.launcher.Main.main(Main.java:948)
at org.eclipse.core.launcher.Main2.main(Main2.java:46)
2If the software runs on a different windows 7 machine then the problem is of a missing dependency problem and compatability mode is unlikely to help – Ramhound – 2014-09-20T12:39:56.170
I've found the problem. My Windows Vista is a 32-bit machine and my Windows 7 is a 64-bit machine, and the software tries to load a 32-bit DLL. – John Sonderson – 2014-09-21T09:14:41.897
However I'm not sure about how to solve the problem. – John Sonderson – 2014-09-21T09:21:38.510
32-bit software can loaded 32-bit dlls on a 64-bit operating system. Its a Java program this should be easy to do. Its clear what your actually doing is trying to compile a 64-bit java program and trying to reference a 32-bit dll which isn't possible – Ramhound – 2014-09-21T12:43:30.633
I didn't compile anything. I just ran the install script and ended up with an executable that just displays a popup window pointing to the error contained in the above log file. So I guess there is nothing I can do about it. – John Sonderson – 2014-09-21T12:57:26.250
Do you have the required software for this program to run? Because the error message indicates YOU DO NOT. – Ramhound – 2014-09-21T14:30:27.670
Sorry. After checking back once again I found out the software is only supported on Windows XP and Windows Vista but not on Windows 7. Too bad there's no way to run it on Windows 7. – John Sonderson – 2014-11-07T13:19:42.943
1One would have to work really hard to write a Java application that supported Vista and not Windows 7. – Ramhound – 2014-11-07T13:36:52.667
Maybe the application makes JNI (Java Native Interface) calls to the system or something like that. I thought this would not be necessary for a simple word dictionary application, but as the error reports,
swt-win32-3139.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
, so I guess the application is not written in pure Java for some reason. – John Sonderson – 2014-11-07T14:31:13.237You need to supply a 64-bit version of the
swt-win32-3139.dll
if you want to run it on a 64-bit operating system. – Ramhound – 2014-11-07T15:31:55.153