Инструменты для разработки
Last updated
Was this helpful?
Last updated
Was this helpful?
Разработка внутриигровых ботов происходит на более низком уровне по сравнению с кликерами. В ней приходится оперировать простыми абстракциями ОС. Поэтому наши инструменты будут сложнее, чем в прошлой главе.
В этой главе мы будем использовать только язык C++. Для компиляции и работы с кодом рекомендую вам бесплатную IDE вместо открытого набора инструментов MinGW. Проблема в том, что MinGW плохо интегрируется с некоторыми Windows библиотеками (например dbghelp.dll
). Вы можете пробовать компилировать примеры этой главы с MinGW, но будьте готовы переключиться на Visual Studio IDE.
Не забудьте обновить для того, чтобы использовать последнюю версию Visual Studio IDE.
Для доступа к Windows Native API и линковки с системной библиотекой ntdll.dll
вам понадобится [Windows SDK]()).
Отладчик – это инструмент для тестирования и поиска ошибок в приложениях. Обычно им пользуются разработчики программ для исправления своего кода. Однако у отладчиков есть возможности, которые оказываются полезными для исследования чужих приложений.
Бесплатный отладчик мы будем активно использовать на протяжении всей главы. Простой и понятный интерфейс пользователя является его главным преимуществом. Также OllyDbg предоставляет широкие возможности для анализа Windows приложений без исходного кода. Главный его недостаток заключается в поддержке только 32-битный приложений. Рекомендую вам использовать последнюю версию .
Отладчик с открытым исходным кодом поддерживает и 32-битные, и 64-битные приложения. Некоторые возможности OllyDbg в нём отсутствуют, поэтому часть вычислений вам придётся делать самостоятельно. Я рекомендую использовать x64dbg только для отладки 64-битных приложений и OllyDbg в остальных случаях.
– многоцелевой бесплатный отладчик для работы с пользовательскими приложениями, драйверами устройств, системными библиотеками и ядром ОС. Он предоставляет некоторые возможности недоступные в OllyDbg и x64dbg, а также поддерживает 32 и 64-битные приложения. Единственный серьёзный недостаток WinDbg заключается в неудобном пользовательском интерфейсе. Эта проблема частично решается с помощью , которая делает его визуально похожим на OllyDbg. К сожалению, большинство возможностей WinDbg всё равно будут доступны только из .
Для настройки рабочего окружения WinDbg выполните следующие действия:
Скачайте .
Распакуйте полученный архив windbg-workspace-master.zip
в папку themes
(темы) отладчика. Путь к ней по умолчанию:
C:\Program Files (x86)\Windows Kits\8.1\Debuggers\x64\themes
.
Среди скопированных файлов найдите и запустите windbg.reg
. Затем нажмите кнопку "Yes" в диалоге подтверждения.
После настройки окно WinDbg будет выглядеть как на иллюстрации 3-1.
Иллюстрация 3-1. Главное окно WinDbg после настройки рабочего окружения
Помимо отладчика нам понадобится приложение для анализа памяти запущенного процесса.
Инструмент с открытым исходным кодом предоставляет функции сканера памяти, отладчика и Hex-редактора (редактор бинарных файлов). Мы будем использовать Cheat Engine в основном как сканер для поиска адреса переменной в памяти процесса и модификации её значения. Более подробно этот инструмент описан в .
– бесплатный инструмент для анализа сегментов динамической памяти (heap, иногда переводится как "куча"), выделенных процессом. HeapMemView имеет две версии: для 32 и 64-битных приложений. В некоторых случаях он будет нам полезен.