Move envvar names into injshared.h
This commit is contained in:
parent
ab0668d3a9
commit
c1cfed6216
@ -1,5 +1,8 @@
|
|||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
|
||||||
|
const char ENV_EXE_PATH[] = "JADEITE_TARGET_EXE_PATH";
|
||||||
|
const char ENV_DLL_PATH[] = "JADEITE_INJECT_DLL_PATH";
|
||||||
|
|
||||||
static inline void write_protected_process_memory(HANDLE process, void *address, const void *buf, size_t size) {
|
static inline void write_protected_process_memory(HANDLE process, void *address, const void *buf, size_t size) {
|
||||||
DWORD oldProtect;
|
DWORD oldProtect;
|
||||||
VirtualProtectEx(process, address, size, PAGE_EXECUTE_READWRITE, &oldProtect);
|
VirtualProtectEx(process, address, size, PAGE_EXECUTE_READWRITE, &oldProtect);
|
||||||
|
@ -2,9 +2,6 @@
|
|||||||
|
|
||||||
#include <lpayload.h>
|
#include <lpayload.h>
|
||||||
|
|
||||||
const char EXE_ENV[] = "JADEITE_TARGET_EXE_PATH";
|
|
||||||
const char INJECT_DLL_ENV[] = "JADEITE_INJECT_DLL_PATH";
|
|
||||||
|
|
||||||
static inline void read_env(const char *env, char *dest, size_t size) {
|
static inline void read_env(const char *env, char *dest, size_t size) {
|
||||||
GetEnvironmentVariableA(env, dest, size);
|
GetEnvironmentVariableA(env, dest, size);
|
||||||
SetEnvironmentVariableA(env, "");
|
SetEnvironmentVariableA(env, "");
|
||||||
@ -18,11 +15,11 @@ BOOL WINAPI DllMain(HINSTANCE inst, DWORD reason, LPVOID reserved) {
|
|||||||
|
|
||||||
// Get target EXE path
|
// Get target EXE path
|
||||||
char targetExe[MAX_PATH];
|
char targetExe[MAX_PATH];
|
||||||
read_env(EXE_ENV, targetExe, sizeof(targetExe));
|
read_env(ENV_EXE_PATH, targetExe, sizeof(targetExe));
|
||||||
|
|
||||||
// Get the path of the DLL to inject
|
// Get the path of the DLL to inject
|
||||||
char injectDll[MAX_PATH];
|
char injectDll[MAX_PATH];
|
||||||
read_env(INJECT_DLL_ENV, injectDll, sizeof(injectDll));
|
read_env(ENV_DLL_PATH, injectDll, sizeof(injectDll));
|
||||||
|
|
||||||
// Compute the working directory path
|
// Compute the working directory path
|
||||||
char workdir[MAX_PATH];
|
char workdir[MAX_PATH];
|
||||||
|
@ -4,9 +4,6 @@
|
|||||||
|
|
||||||
#include <ipayload.h>
|
#include <ipayload.h>
|
||||||
|
|
||||||
const char EXE_ENV[] = "JADEITE_TARGET_EXE_PATH";
|
|
||||||
const char INJECT_DLL_ENV[] = "JADEITE_INJECT_DLL_PATH";
|
|
||||||
|
|
||||||
const char LAUNCHER_INJECT_DLL[] = "launcher_payload.dll";
|
const char LAUNCHER_INJECT_DLL[] = "launcher_payload.dll";
|
||||||
const char GAME_INJECT_DLL[] = "game_payload.dll";
|
const char GAME_INJECT_DLL[] = "game_payload.dll";
|
||||||
|
|
||||||
@ -46,8 +43,8 @@ int main(int argc, char **argv) {
|
|||||||
printf("Starting \"%s\" via \"%s\"\n", gameExePath, launcherPath);
|
printf("Starting \"%s\" via \"%s\"\n", gameExePath, launcherPath);
|
||||||
|
|
||||||
// Set envvars
|
// Set envvars
|
||||||
SetEnvironmentVariableA(EXE_ENV, gameExePath);
|
SetEnvironmentVariableA(ENV_EXE_PATH, gameExePath);
|
||||||
SetEnvironmentVariableA(INJECT_DLL_ENV, gamePayloadPath);
|
SetEnvironmentVariableA(ENV_DLL_PATH, gamePayloadPath);
|
||||||
|
|
||||||
// Start the launcher
|
// Start the launcher
|
||||||
STARTUPINFO si;
|
STARTUPINFO si;
|
||||||
|
Loading…
Reference in New Issue
Block a user