Author Topic: ATI OpenGl DLL crashes on post-compressed EXE - and how to fix  (Read 8531 times)

Offline Jeremy Collake

  • Administrator
  • Member#
  • *****
  • Posts: 5207
  • Gender: Male
  • The Lasso
    • Bitsum
ATI OpenGl DLL crashes on post-compressed EXE - and how to fix
« on: October 07, 2011, 08:29:15 PM »
For the applications that USE OpenGL, and have imported its Windows interface, OpenGL.DLL:

There is a crash after compression on systems with ATI device drivers. It is due to the ATI OpenGL DLL applying API hooks to processes that load it. The /RestoreImports:Yes switch originally intended to deal with this, but as their code changed, it did not. I do not want to play cat and mouse with them.. so..

A customer reports an alternate work-around: Load the OpenGL.DLL dynamically (LoadLibrary), importing manually (GetProcAddress). During this stage the original import table is fully reconstructed and will not be affected by the ATI OpenGL API hooks.

Some protection and third-party plugins may interfere with this.

I am looking into what has happened with the /RestoreImports switch .. if it still works properly, or if ATI made some other change to their code that makes messing with a half-uncompressed image problematic.


Software Engineer. Bitsum LLC.