Модераторы: Akina

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как сделать трейнер для игры? 
:(
    Опции темы
Guest
Дата 13.5.2005, 21:59 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered












Как сделать трейнер для игры?
есть Exe файл игры, например Doom.exe
известен адрес 0011ABAE значение которого нужно изменить
нужно установить значение, по этому адресу, ну к примеру 100 (сто патронов)
Как это сделать?

  Вверх
rsm
Дата 14.5.2005, 00:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 999
Регистрация: 16.3.2005

Репутация: нет
Всего: 62



Звюняюсь что не помню васика (писал на нем очень давно) и пишу пример на С но код не сложный, разобраться можно.

Код

/* 
Описание: 
    Функция, создающая процесс и пропатчивающая его память.

Аргументы:

    LPCTSTR lpExeName - имя запускаемого файла;
    LPTSTR lpCmdParams - параметры командной строки;
    LPCTSTR lpWorkDir - рабочий каталог;
    LPVOID lpvAddress - адрес для патча;
    LPVOID lpvPatch - данные для патча;
    SIZE_T dwPatchLen - размер данных для патча;

Возвращаемое значение (тип - BOOL):

    TRUE - если память успешно пропатчена;
    FALSE - если произошла ошибка;
*/


BOOL PatchProcessMemory(LPCTSTR lpExeName, LPTSTR lpCmdParams,
                        LPCTSTR lpWorkDir, LPVOID lpvAddress,
                        LPVOID lpvPatch, SIZE_T dwPatchLen)
{
    STARTUPINFO si;
    PROCESS_INFORMATION pi;
    DWORD dwMemProtect, dwRWbytes;

    GetStartupInfo(&si);
    
    // создаем процесс
    if (!CreateProcess(lpExeName, lpCmdParams, NULL, NULL, FALSE, 
                    CREATE_NEW_CONSOLE | NORMAL_PRIORITY_CLASS, 
                    NULL, lpWorkDir, &si, &pi)) 
        return FALSE;
    
    // устанавливаем права доступа к участку памяти для патча
    VirtualProtectEx(pi.hProcess, lpvAddress, dwPatchLen, 
                     PAGE_READWRITE, &dwMemProtect);

    // патчим память
    if(!WriteProcessMemory(pi.hProcess, lpvAddress, lpvPatch, 
                           dwPatchLen, &dwRWbytes))
    {
        CloseHandle(pi.hProcess);
        return FALSE;
    }

    // восстанаваливаем старые права доступа к участку памяти
    VirtualProtectEx(pi.hProcess, lpvAddress, dwPatchLen, 
                     dwMemProtect, &dwRWbytes);    

    CloseHandle(pi.hProcess);
    return TRUE;
}


Применение:
Код

    DWORD dwMemAddress = 0x403F5B;
    BYTE bPatch = 0x0EB;
    PatchProcessMemory("doom3.exe", NULL, NULL, (void*)dwMemAddress, 
                       (void*)&bPatch, 1);    
[s]

Это сообщение отредактировал(а) rsm - 14.5.2005, 08:15
PM MAIL   Вверх
Guest
Дата 14.5.2005, 02:29 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











мне нужно на vb

  Вверх
rsm
Дата 14.5.2005, 08:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 999
Регистрация: 16.3.2005

Репутация: нет
Всего: 62



Цитата
мне нужно на vb

Может кто-нибудь сумеет переписать, ведь код уже есть.
PM MAIL   Вверх
Guest
Дата 14.5.2005, 19:43 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











rsm не во время выполнения. А так - открываешь нужный файл for binary, переходишь к нужной позиции и пишешь, что надо smile
  Вверх
Гость_Run-time Error
Дата 14.5.2005, 19:43 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Я это
  Вверх
Guest
Дата 15.5.2005, 17:23 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











smile
  Вверх
Guest
Дата 15.5.2005, 17:23 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











smile smile
  Вверх
cardinal
Дата 15.5.2005, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



По поводу
Цитата(Guest @ 14.5.2005, 17:43)
открываешь нужный файл for binary, переходишь к нужной позиции и пишешь, что надо

см. здесь:
http://forum.vingrad.ru/index.php?showtopic=51348


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Guest
Дата 16.5.2005, 07:27 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











хотелось бы увидеть код програмки. Если не трудно. smile smile
  Вверх
cardinal
Дата 17.5.2005, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



Цитата(Guest @ 16.5.2005, 05:27)
хотелось бы увидеть код програмки.

Весь форум завален, осталось только поиском воспользоваться и мозгами пораскинуть.


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Spawn™Production®
Дата 17.5.2005, 21:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Тестер ПО, VB.NET Developer
**


Профиль
Группа: Участник
Сообщений: 398
Регистрация: 12.4.2005
Где: Зеленоград

Репутация: нет
Всего: 12



Цитата(Guest @ 16.5.2005, 08:27)
хотелось бы увидеть код програмки. Если не трудно

http://team-x.ru/info.php?article=trainermaking/10 - статья и пример.

Не поверишь, как я это нашёл smile В рамблере написал Visual Basic трейнер


--------------------
ОС: WinXP SP2 Rus
Frameworks: v1.0.3705, v1.1.4322, v2.0.50215, v2.0.50727
Сам кодю на VB (6.0 (почти забросил), 7.1, 8.0)
PM WWW   Вверх
Guest
Дата 17.5.2005, 22:38 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Spawn™Production® - ну это уже что то ....
  Вверх
Spawn™Production®
Дата 18.5.2005, 13:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Тестер ПО, VB.NET Developer
**


Профиль
Группа: Участник
Сообщений: 398
Регистрация: 12.4.2005
Где: Зеленоград

Репутация: нет
Всего: 12



Guest, полностью за Вас никто ничего делать не будет. Вам лишь помогут найти истинный путь. Если хотите, чтобы сделали за Вас всю работу, то за это придётся заплатить... Жестоко, конечно, но такова жизнь...


--------------------
ОС: WinXP SP2 Rus
Frameworks: v1.0.3705, v1.1.4322, v2.0.50215, v2.0.50727
Сам кодю на VB (6.0 (почти забросил), 7.1, 8.0)
PM WWW   Вверх
Dex
Дата 18.5.2005, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 31
Регистрация: 9.3.2005

Репутация: нет
Всего: нет



И вообще за такими вопросами можно было не обращаться
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0540 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.