Add project files.

This commit is contained in:
k0t9i
2023-01-16 15:33:32 +04:00
parent 0f6fb75cff
commit 3c20df7683
130 changed files with 7756 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
#include "pch.h"
#include "Injector.h"
namespace InjectLibrary
{
HHOOK Injector::_hookHandle = nullptr;
Injector::Injector(const std::string& mutexName, int windowsMessage) : _mutexName(mutexName), _windowsMessage(windowsMessage)
{
}
void Injector::SetHook(const HINSTANCE moduleHandle)
{
if (moduleHandle) {
// <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD> <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
HANDLE mutexHandle = CreateMutexA(nullptr, false, _mutexName.c_str());
if (GetLastError() != ERROR_ALREADY_EXISTS) {
_hookHandle = SetWindowsHookExA(_windowsMessage, (HOOKPROC)HookMessageProcedure, moduleHandle, 0);
_mutexHandle = mutexHandle;
}
else if (mutexHandle) {
CloseHandle(mutexHandle);
}
}
else {
UnhookWindowsHookEx(_hookHandle);
CloseHandle(_mutexHandle);
}
}
const LRESULT Injector::HookMessageProcedure(const DWORD code, const DWORD wParam, const DWORD lParam)
{
return CallNextHookEx(_hookHandle, code, wParam, lParam);
}
}