Closed Uroc327 closed 4 years ago
Yes this is an unfortunate consequence of how Shader Patch is implemented. The fact that it works by wrapping, analyzing and implementing the games Direct3D 9 calls isn't so great for other applications that happen to be located in the same folder as the game as they end up picking up Shader Patch as well and then end up crashing.
I'm not entirely sure on the best way to fix this. The only surefire way I can think of would be to include a tool (or option in the installer) that would rename Shader Patch's d3d9.dll
to shaderpatch.dll
and then patch the game's executable to point it towards the shaderpatch.dll
instead of d3d9.dll
. It would completely solve any problems like this but increase the complexity of installing/uninstalling Shader Patch. Would that be an okay solution for you?
I guess it would, yeah. Although I fear the additional complexity from this workaround could produce other unforseen problems. Would it be easier instead to patch the mod loader or to check the processes cmdline before installing file hooks?
I ended up finding a way to fix the problems that were causing the crash. I'll be posting a new release soon with the needed fixes in it.
When having Shader Patch installed, Mod Loader is not able to start any more. When double-clicking the .exe, I get the waiting cursor and then nothing happens. This also happens, when Shader Patch is disabled via the yml.
When shader patch is enabled though, the following lines get written to the
shader patch.log
(only):