Kbase P84349: Error "ClassFactory cannot supply requested class" accessing an Open Client ActiveX DLL
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  1/13/2009 |
|
Status: Verified
SYMPTOM(s):
Error "ClassFactory cannot supply requested class" accessing an Open Client ActiveX DLL
Error "ClassFactory cannot supply requested class" using a DLL generated by ProxyGen
ClassFactory cannot supply requested class
Microsoft Java Virtual Machine (MS JVM) installed; JVIEW command returns results
CLASSPATH is set as a System environment variable and points to an Open Client Runtime Package
O4GLACTIVEX.DLL is properly registered
Open Client DLL is properly registered
Error occurs when instantiating the Open Client DLL, before any methods of the object are called
Progress RoundTripTest.exe fails with the same "ClassFactory" error
Open Client DLL can be used properly on other machines
FACT(s) (Environment):
Progress 9.1x
Windows
CAUSE:
Although MSJAVA.DLL was present in the System32 folder on the machine (hence the success of the JVIEW command), related Class files were missing.
It would appear that the MS JVM installer detected MSJAVA.DLL and so took this to mean that the MS JVM was already fully installed. Therefore the Class files were not installed even when the MS JVM installation was re-run.
FIX:
To resolve the issue:
1) Locate MSJAVA.DLL (normally in %WINDIR%\SYSTEM32) and rename it to MSJAVA.DLL.OLD
2) Run the MSJAVAX86.EXE to reinstall the MS JVM
3) Reboot the machine for the changes to take effect
4) Re-test the Open Client DLL
If problems remain or a new error occurs, then rename the newly installed version of MSJAVA.DLL and replace it with the original version.