This site is currently read-only as we are migrating to Oracle Forums for an improved community experience. You will not be able to initiate activity until January 31st, when you will be able to use this site as normal.

    Forum Stats

  • 3,890,899 Users
  • 2,269,649 Discussions


Java3D application behaves differently with OpenGL

843799 Member Posts: 49,999
edited Dec 31, 2001 3:04PM in Java 3D
I have an application that works fine on Windows systems with opengl32.dll version 4. But when I try to run it on systems with opengl32.dll version 5, it doesn't display correctly (appears to be a refresh problem).

I bundle the runtime version of Java and Java3d with the application. I can also bundle the dll with the application but I don't know how to force Windows to use it for this particular app (I know, this is a Java forum not Windows).


Why does Java3d behave differently for the newer Windows opengl32.dll and is there a way to fix this?


  • 843799
    843799 Member Posts: 49,999
    It's no surprise that you're having different behavior with the newer version of the DLL. The problem is that you can only register a DLL with the same file name once, so you have to be careful about downgrading someone's system with your DLL, or it might cause issues elsewhere for the user. You can use regsvr32 to register and unregister DLLs, and it's fairly simple to use. Just run regsvr32 directly, and it'll give you a popup with some details on how to use it. When a DLL is requested in Windows, first it checks to see if the DLL is registered, and then uses that DLL, if it doesn't find it, then it searches in the current directory for the DLL, and then it searches through the %PATH% environment variable directories. So if you unregister the DLL, and then put your DLL in whatever directory that your app is executed from, it should work, as long as the newer version DLL remains in the system32 (or wherever it is) directory so that other applications can still use it. Hopefully that helped.
  • 843799
    843799 Member Posts: 49,999
    Also, assuming you're not targeting NT4 as a platform, or aren't using any OpenGL specific functions in J3D, you might consider using the DirectX version of J3D.
This discussion has been closed.