Direct3DHook icon indicating copy to clipboard operation
Direct3DHook copied to clipboard

Failed injection in League of Legends

Open nuclearWinters opened this issue 7 years ago • 9 comments

Error says: Capture.InjectionFailedException: 'Injection to the target process failed. See InnerException for more detail.'

Is this a issue with the game expecifically?

nuclearWinters avatar Oct 25 '18 00:10 nuclearWinters

Possibly, definitely used to work with LoL, but it has been a long time since I tried. Would need to check the inner exception. If it is Code 5, then it is a permissions problem (ie game anticheat/ protection logic or similar preventing injection)

justinstenning avatar Oct 25 '18 03:10 justinstenning

Same exception happening when trying to inject into Overwatch. Access denied. #60 might be of help, though I haven't tested it yet.

vacekj avatar Oct 26 '18 08:10 vacekj

How do we go from here then?

I've looked into OBS Studio capturing method, since it can capture it no problem. How does their method work? Can we use it here?

vacekj avatar Oct 26 '18 08:10 vacekj

OBS is probably whitelisted. Certainly that is the case with the protection in ARK and Fortnite.

It might be worth trying the stealth injection but I wouldn’t hold my breath.

If you are after screencapture, then you could use windows desktop duplication APIs, this requires no hooking at all, but requires Windows 8+

justinstenning avatar Oct 26 '18 08:10 justinstenning

I just tried recording Overwatch using https://github.com/smourier/Duplicator and it shows up as black, as a result of Overwatch screenblock protection. So I guess the only way to go about this is to somehow manage to hook into OW.

vacekj avatar Oct 26 '18 09:10 vacekj

If you are after screencapture, then you could use windows desktop duplication APIs, this requires no hooking at all, but requires Windows 8+

I want a screenshot every second and do computer vision with them in python simultaneously. I will try that.

nuclearWinters avatar Oct 27 '18 01:10 nuclearWinters

@nuclearWinters @JouzaLoL Referring to @spazzarama https://github.com/spazzarama/Direct3DHook/issues/56

I modified CaptureProcess.cs to use SetWindowsHookEx CaptureProcess.zip

Use the uploaded file instead of existing one after changing a couple of lines. It should inject Capture.dll like it did for Call of duty Infinite Warfare for me; it was giving Access denied code 5

pe

Next step is to use the LocalHook but I haven't been able to make it work. Perhaps you or @spazzarama, whenever he has the time, can take it from where I got stuck.

jazzup avatar Nov 01 '18 09:11 jazzup

@jazzup have you tried the LocalHook at all after injecting using SetWindowsHookEx? If you want the IPC etc.. you will have to come up with a way to setup the channel and connect to it from the injected assembly - you could use a static name during testing for the channel or just not use the IPC and see how it fairs.

justinstenning avatar Nov 02 '18 04:11 justinstenning

I get this when trying to inject into League of Legends.exe

System.ApplicationException: STATUS_INTERNAL_ERROR: C++ completion routine has returned success but didn't raise the remote event. (Code: 0)

bittzz avatar Feb 15 '19 16:02 bittzz