An injector that fetches version.json from a webserver, downloads a dll and injects it into the game.
To setup the build environment, run the following commands in your preferred terminal.
git clone https://github.com/Yimura/Injector.git --recurse
cd Injector
premake5 vs2019Get premake5 from here.
Then afterwards open Injector.sln and start coding.
This injector has 2 ways of functioning:
- Remote mode (webserver required)
- Local mode (inject without webserver)
If you only wish to use the local features just ignore this step and skip to Injector settings.
Requirements:
- Webserver
In the root of your webserver create a file called version.json, this file will tell our Injector what to do and if it should download a dll.
{ "file": "menu.dll", // path to the dll file on the webserver starting from the root / is prefixed in the binary "version": "0.1.3", // human readable version number "version_machine": 13 // version number that the injector will compare against }
If you run the injector for the first time and no settings.json is present in the folder from which you executed the Injector it will create an example file.
{ "application_mode": 0, "injection_direction": 0, "local": { "file": "./some_dll.dll" }, "target_application": "wordpad.exe", "web_server": { "dll_provider": "http://example.com", "file": "latest.dll", "version": -1 } }
| Name | Description | Value |
|---|---|---|
application_mode |
If the injector runs locally or with a remote server. | WEB_SERVER=0 & LOCAL=1 |
target_application |
The process name of the application to inject into. | string |
local.file |
The local path to a DLL. | string |
web_server.dll_provider |
Web Server origin. | string |
web_server.file |
The file name to save the DLL to locally. | string |
web_server.version |
Machine version integer to compare with the remote version. | int |
injection_direction is currently not implemented, but still exists for future API.
That's it.