diff options
author | BobTheBob <32057864+BobTheBob9@users.noreply.github.com> | 2021-09-06 00:24:52 +0100 |
---|---|---|
committer | BobTheBob <32057864+BobTheBob9@users.noreply.github.com> | 2021-09-06 00:24:52 +0100 |
commit | fb82ecfec5893b00f68b72f912c6b3975b5fdb4f (patch) | |
tree | 74b0a948a54b508fd44897597877348cac6f0956 /InjectionProxy64/main.cpp | |
parent | 07dfc69252f520bb5ed8ce92e55da4a8cf985bff (diff) | |
download | NorthstarLauncher-fb82ecfec5893b00f68b72f912c6b3975b5fdb4f.tar.gz NorthstarLauncher-fb82ecfec5893b00f68b72f912c6b3975b5fdb4f.zip |
moving to using unpacked for launcher
Diffstat (limited to 'InjectionProxy64/main.cpp')
-rw-r--r-- | InjectionProxy64/main.cpp | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/InjectionProxy64/main.cpp b/InjectionProxy64/main.cpp deleted file mode 100644 index f338f910..00000000 --- a/InjectionProxy64/main.cpp +++ /dev/null @@ -1,40 +0,0 @@ -#include <string> -#include <Windows.h> - -#define DLL_NAME L"Northstar.dll" - -int main(int argc, char** argv) -{ - // this a proxy process used for injecting into titanfall, since launchers are 32bit you can't inject from those into 64bit titanfall - // dont bother to do any error checking here, just assume it's getting called right - DWORD pid = std::stoi(argv[0]); - DWORD threadId = std::stoi(argv[1]); - - HANDLE process = OpenProcess(PROCESS_ALL_ACCESS, false, pid); - HANDLE thread = OpenThread(THREAD_ALL_ACCESS, false, threadId); - - HMODULE hKernel32 = GetModuleHandleW(L"kernel32.dll"); - LPTHREAD_START_ROUTINE pLoadLibraryW = (LPTHREAD_START_ROUTINE)GetProcAddress(hKernel32, "LoadLibraryW"); - - SIZE_T dwLength = (wcslen(DLL_NAME) + 1) * 2; - LPVOID lpLibName = VirtualAllocEx(process, NULL, dwLength, MEM_COMMIT, PAGE_READWRITE); - - SIZE_T written = 0; - WriteProcessMemory(process, lpLibName, DLL_NAME, dwLength, &written); - - HANDLE hThread = CreateRemoteThread(process, NULL, NULL, pLoadLibraryW, lpLibName, NULL, NULL); - - WaitForSingleObject(hThread, INFINITE); - - // TODO: need to call initialisenorthstar in the new process - // (this does not currently work!!! ) - //LPTHREAD_START_ROUTINE pInitNorthstar = (LPTHREAD_START_ROUTINE)GetProcAddress((HMODULE)lpLibName, "InitialiseNorthstar"); - //HANDLE hInitThread = CreateRemoteThread(processInfo.hProcess, NULL, NULL, pInitNorthstar, NULL, NULL, NULL); - //WaitForSingleObject(hInitThread, INFINITE); - //CloseHandle(hInitThread); - - ResumeThread(thread); - CloseHandle(hThread); - - VirtualFreeEx(process, lpLibName, dwLength, MEM_RELEASE); -}
\ No newline at end of file |