Перейти к содержанию

[C++] Gamehacklab Trainer Sdk 0.1


Рекомендуемые сообщения

Выкладываю первую версию на обозрение, немного вырезал т.к. не все работает :-D

Присутсвует:

  • получение хендла процесса по имени .exe-файла
  • выделение памяти в процессе для CodeCave'а
  • Запись в память
  • Базовые принципы работы с чекбоксами
  • GDI-рисование

Всё недочеты поправлю.

91ba3b0fd1cd6808aa06c70b69667b6f.jpeg

Пример использования:


if(LOWORD(wParam)==100)
{
HWND hwndCheck = GetDlgItem(hWnd, 100);// Получаем HWND нашего chechbox'а.
LRESULT res = SendMessage (hwndCheck, BM_GETCHECK, 0, 0);// Выясняем текущее состояние chechbox'а.
if(res == BST_CHECKED)//включаем
{
mManager.m_WriteProcessMemory(hProc, (void*)0x006470C5, (void*)NoRecoilOn, sizeof(NoRecoilOn));
}
if(res == BST_UNCHECKED)//выключаем
{
mManager.m_WriteProcessMemory(hProc, (void*)0x006470C5, (void*)NoRecoilOff, sizeof(NoRecoilOn));
}
}

В таймер допихнёте все что будет нужно:


void progFunctions::Program_WM_TIMER (HWND hWnd, WPARAM wParam, LPARAM lParam)
{
if(in == false && mManager.m_OpenProcess(PROCESS_ALL_ACCESS,false, L"hackapp.exe"))
{
/*Код выполняется единожды после запуска процесса*/
hProc = mManager.m_OpenProcess(PROCESS_ALL_ACCESS,false, L"hackapp.exe");//получаем хендл процесса hackapp.exe
lpMemory = VirtualAllocEx(hProc, NULL, 64, MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE);//выделяем память для CodeCave
in = true;
}
if(in && !mManager.m_OpenProcess(PROCESS_ALL_ACCESS,false, L"hackapp.exe"))
{
/*код выполняется единождый когда процесс теряется*/
in = false;//говорим что процесс не запущен
lpMemory = NULL;
}
InvalidateRect(hWnd, NULL, TRUE);//инвалидируем область окна для перерисовки
UpdateWindow(hWnd);
}

http://narod.ru/disk...sdk_01.rar.html

Ссылка на комментарий
Поделиться на другие сайты

  • 4 недели спустя...
  • 1 год спустя...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.