Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/maluramichael/dll-proxy-generator
Creates a proxy dll which sits between the game and original dll
https://github.com/maluramichael/dll-proxy-generator
gamedev hacking reverse-engineering
Last synced: 22 days ago
JSON representation
Creates a proxy dll which sits between the game and original dll
- Host: GitHub
- URL: https://github.com/maluramichael/dll-proxy-generator
- Owner: maluramichael
- License: mit
- Created: 2018-09-29T20:51:52.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2024-03-26T07:44:05.000Z (8 months ago)
- Last Synced: 2024-03-26T08:41:46.155Z (8 months ago)
- Topics: gamedev, hacking, reverse-engineering
- Language: C++
- Homepage: https://malura.de
- Size: 19.5 KB
- Stars: 98
- Watchers: 4
- Forks: 31
- Open Issues: 1
-
Metadata Files:
- Readme: Readme.md
- License: LICENSE
Awesome Lists containing this project
README
# Dll Proxy Generator
This project creates a new dll which sits between a game and the original dll. This way you can intercept all dll calls.
Game -> Your proxy dll -> Original dll
Original by Kristoffer Blasiak () i modified his project so the output fits my needs.
## Build
Open DllProxyGenerator.sln with Visual Studio and build it
## Usage
### Generate the proxy dll source
.\DllProxyGenerator.exe "path\to\your\dll"
Be careful which dlls you try to proxy. I tried public windows dlls like d3d9 or user32 which work great. Game specific dlls with mangled function names wont work. Except someone knows how to counter this problem.
### Build the proxy dll
Create a new Visual Studio dll project. Copy the generated proxy files into your project.
Remove every other file like stdafx.h
Change the following settings.
* General > Project Defaults > Character Set = Use Multi-Byte Character Set
* C/C++ > Precompiled Headers > Precompiled Header = Not Using Precompiled Headers### Use the new dll
Copy your new proxy inside the game directory. Some games have a different load mechanism. Depending on which dll you generated it could be possible that the game does not load your dll first in which case the proxy doesn't work.