Note: DX:HR is a Steam-only game. Being a Steam game means that injecting the EXE doesn't work if Steam is already running.
When attempting to inject the EXE when Steam is not running, the game silently crashes and generates a .mdmp crash dump file. Steam will be running with the injector active, but any subsequent attempt to launch the game (even from the Steam GUI) will have the same result. Here is a summary of the crash dump info stored in the crash dump file:
Process Name: dxhr.exe : c:\program files (x86)\Steam\steamapps\common\deus ex - human revolution\dxhr.exe
Process Architecture: x86
Exception Code: 0xC0000005
Exception Information: The thread tried to read from or write to a virtual address for which it does not have the appropriate access.
Heap Information: Not Present
This is under Win7 Pro SP1 64-bit on an AMD Radeon HD 5870 with AMD Catalyst 11.12.
One workaround is to hold shift and double-click dxhr.exe to launch it in a full-screen window. This gives the full screen experience without sacrificing control of the hardware gamma LUT to the game.
I don't own DX:HR, but I'm experiencing similar problems with other steam games (Trine 2), that I think may be related. I hope to have this fixed in the next release.
Any updates on this?
Would it be possible to instead implement Color Clutch as, say, a d3d9.dll that is placed in the game's executable folder, which the game will then load in place of (and pass-through to as appropriate) the real one? There are other projects like ENB Series and SweetFX that work this way, and they do not cause problems with Steam.
Currently, I'm trying to launch Dragon Age Origins from Steam via a batch file that uses color clutch to launch the game with the injector, and the Steam overlay does not appear because there are too many levels of indirection going on or something.