summaryrefslogtreecommitdiff
path: root/inject
AgeCommit message (Collapse)AuthorFilesLines
2016-09-19inject: Remove unused functions on mhook implementation.Jose Fonseca2-234/+0
2016-09-19inject: Hook LoadLibrary* with mhook.Jose Fonseca1-57/+31
2016-09-19inject: Compact Mhook_SetHook invocation.Jose Fonseca1-25/+12
2016-09-18inject: Follow subprocesses with mhook.Jose Fonseca1-68/+84
2016-09-07inject: Initial mhook integration.Jose Fonseca4-21/+1156
Essentially fork injectee module into two variants: IAT and mhook.
2016-09-05inject: Only clear the modules that have been freed.Jose Fonseca1-2/+19
This significantly speeds up injection on applications that Load/FreeLibrary a lot.
2016-08-31inject: Remove NumberOfRvaAndSizes assertion.Jose Fonseca1-1/+0
It doesn't seem true nor necessary.
2016-03-05dxgitrace: Complete DirectComposition specs.Jose Fonseca1-0/+1
This addresses https://github.com/apitrace/apitrace/issues/377 , but even with complete DirectComposition specs, one will stumble into attempts to use undocumented IID_ID3D11PartnerDevice interface.
2015-12-16inject: Don't hook AcLayers.dll.Jose Fonseca1-0/+4
Or infinite recursion will ensue.
2015-11-16injectee: Rename Mutex to g_Mutex.Jose Fonseca1-10/+10
For consistency.
2015-11-16inject: Use InitializeCriticalSection.Jose Fonseca1-1/+3
Instead of non-standard static critical section static initializer. Fixes #397.
2015-10-31inject: Prevent infinite recursion with Steam game overlay DLL.Jose Fonseca1-2/+10
Even if the Steam overlay is disabled, it seems that the DLL is still injected, which is sufficient to cause the problems.
2015-10-09inject: Make the code more robust against weird modules.Jose Fonseca1-5/+15
2015-08-25inject: Take in account that IsWow64Process returns false on 32-bits Windows.Jose Fonseca1-8/+5
Regression introduced by 6ddfd98cdafefaa1b60273d5568b8dbd13730dae. Fixes https://github.com/apitrace/apitrace/issues/378
2015-08-24inject: Defer pfnCreateProcessAsUserW check until it's actually used.Jose Fonseca1-1/+4
Noticed while investigating https://github.com/apitrace/apitrace/issues/378
2015-08-13inject: Intercept GetProcAddress with ordinals.Jose Fonseca1-5/+22
2015-08-06inject: Prevent the C/C++ runtime from destroying things when process ↵Jose Fonseca2-1/+48
terminates.
2015-08-03inject: Detect mixed architectures for child processes too.Jose Fonseca3-27/+49
2015-08-03inject: Log remote process PID on failure to inject.Jose Fonseca1-1/+2
2015-07-16d3dtrace: Trace the actual DXVA2 API calls.Jose Fonseca1-0/+3
As opposed to internal interfaces.
2015-07-15inject: Use GetProcAddress for CreateProcessAsUserW.Jose Fonseca1-11/+26
To ensure we use kernel32.dll, instead of advapi32.dll. As depending on advapi32.dll greatly increase our chances we get detached earlier.
2015-07-15inject: Don't intercept CreateProcessAsUserA.Jose Fonseca1-39/+1
Given it's implemented by advapi32.dll, not kernel32.dll.
2015-07-15inject: Only specific security attributes when creating the file mapping.Jose Fonseca3-17/+19
To avoid depending on advapi32.dll from inject.dll.
2015-07-13inject: Reorder log calls.Jose Fonseca1-10/+10
So that they are set after VERBOSITY is read.
2015-07-13trace,inject: Don't increment refcount on GetModuleHandleExA.Jose Fonseca1-3/+4
2015-07-10inject: Less invasive workaround for failed assertion.Jose Fonseca1-2/+5
2015-07-10Revert "inject: Ensure we always get the real module handle."Jose Fonseca1-10/+1
This reverts commit bd725c22b9e0ee5341cfd34a00c6f68a64a608e6. It's causing problems.
2015-07-10inject: Ensure we always get the real module handle.Jose Fonseca1-1/+10
By using an absolute path.
2015-07-06inject: Override assertion implementation.Jose Fonseca1-0/+16
2015-07-06inject: Allow to control verbosity via a command line option.Jose Fonseca3-7/+20
2015-07-06inject: Better diagnostic messages when attaching to a debugger.Jose Fonseca1-6/+19
2015-07-06inject: Eliminate SetSharedMem/GetSharedMem.Jose Fonseca3-36/+17
They stand in the way of adding more things to SharedMem struct.
2015-06-29inject: Support ejecting DLL from remote process.José Fonseca2-58/+175
2015-06-27inject: Preserve last-error.Jose Fonseca1-0/+14
Some applications rely on the last-error from LoadLibraryEx to detect when KB2533623 is not supported.
2015-06-20inject: Support attaching a debugger.Jose Fonseca2-34/+183
And use getopt option parsing while at it.
2015-06-19inject: Handle old-style imports.Jose Fonseca1-7/+10
Prevent infinite loop.
2015-06-19inject: Add note about CreateProcessWithTokenW.Jose Fonseca1-0/+1
2015-03-12inject: Close remote thread handle.José Fonseca1-9/+17
2015-02-19inject: Adjust LoadLibraryEx flags.José Fonseca1-2/+44
2015-02-19inject: Pass-through LoadLibraryEx* flags.José Fonseca1-25/+31
Instead of jamming all into one.
2015-02-07inject: Warn the failed to patch.José Fonseca1-2/+8
2015-02-07inject: Ensure DLLs get re-patched when reloaded.José Fonseca1-1/+23
2015-02-07inject: Handle api-ms-win-core-kernel32-legacy-l1-1-1 too.José Fonseca1-0/+1
2015-02-06inject: Log patch offsets.José Fonseca1-1/+2
2015-02-06inject: Recognize api-ms-win-core-kernel32-legacy-l1-1-0.José Fonseca1-0/+1
2015-02-06dxgitrace: Trace D3DPERF_* functions too.José Fonseca1-0/+1
2015-01-26inject: Fix injection of Direct2D wrapper.José Fonseca1-0/+3
2014-10-03inject: Don't mistakenly recognise commands that start with a digit as ↵José Fonseca1-1/+12
process ids.
2014-10-02inject: Attach to DWM with display device disabled.José Fonseca1-7/+18
To avoid tracing with Microsoft Basic Display Driver.
2014-10-02inject: Bundle devcon utility code.José Fonseca2-7/+8