techiew / DirectXHook

DirectX 11/12 hook including a simple overlay framework.
181 stars 23 forks source link

Is massive rewrite ready? #7

Open lostmsu opened 1 year ago

lostmsu commented 1 year ago

Or should I use one of the older commits?

Perhaps tag a "stable" v0.0.1 on one of the older commits?

P.S. right now I imported the project into VS 2022, which got PlatformToolset upgraded to v143. As-is the solution does not compile because the example cpp tries to include main headers, but the path to them is not set.

P.P.S. The .vcxproj.user file is not supposed to be checked in.

techiew commented 1 year ago

I've gotten reports that the newest commit has instability related to the new hooking method - it is now more advanced compared to the simple VMT pointer switch, but also less confusing to third party hooks, i.e. more standard. The problem is it doesn't handle differences in instructions at the top of the functions that are hooked (which vary on different people's PCs), the instructions apparently change quite a bit depending on your version of Windows, etc... I will have a fix for this soon.

The previous commit does not have this problem, but will with some combinations of third-party overlays cause crashes.

I'll look into adding tags, having a separate master and develop branch, etc. I'll also look into your other points. I've only just begun rewriting and cleaning up the code.