English ● Español ● 简体中文 ● Русский ● 한국어 ● ภาษาไทย ● Français ● Italiano ● 日本語 ● Bahasa Indonesia ● Português ● Deutsch
Textractor (a.k.a. NextHooker) это проект x86/x64 Windows/Wine программы для захвата текста из видеоигр, основанный на ITHVNR.
Смотреть обучающее видео для быстрого ознакомления.
Выпуски Textractor могут быть найдены здесь.
Последний выпуск ITHVNR может быть найден здесь.
- Высокая расширяемость
- Автозахват текста из множества игровых движков (включая некоторые, неподдерживаемые в VNR!)
- Захват текста с использованием /H "hook" кодов (поддерживается большинство AGTH кодов)
- Прямое извлечение текста с использованием /R "read" кодов
Сообщайте о любых ошибках, играх, с которыми у Textractor проблемы, запросах о новых функциях или другие предложения.
Если у вас возникают проблемы с захватом текста из какой либо игры, скиньте на электронную почту ссылку на её загрузку или киньте её подарком в Steam , для тестирования.
Смотрите Проект примера расширения, чтобы узнать, как создать расширение.
Также для примера того, что делают расширения, смотрите папку extensions.
Любой вклад приветствуется! Пишите мне(автору) на [email protected], если у вас есть любые вопросы о кодовой базе.
Используйте стандартные действия для создания pull request (fork, branch, commit changes, создайте PR из своей ветки branch на мой master).
Вклад в перевод совсем не сложен: просто переведите строки в text.cpp, также, как и этот README.
Перед компиляцией Textractor, установите Visual Studio с поддержкой CMake, а также Qt версии 5.13
Тогда вы сможете просто открыть и построить проект в Visual Studio. Запустите Textractor.exe.
Хост (смотрите папку host) внедряет texthook.dll (созданной из папки texthook) в целевой процесс и подключается к нему через два файла-канала (pipe).
Хост пишет в hostPipe, texthook пишет в hookPipe.
texthook ждет присоединения канала, тогда внедряет некоторые инструкции в любые выводящие текст функции (такие как TextOut, GetGlyphOutline), что вызывает пересылку поступающего в них текста через канал.
Дополнительная информация о хуках размещена через файл просмотра (a.k.a. section object), который сопоставлен с ссылкой на класс TextHook.
Текст, который хост получает через канал, затем немного обрабатывается перед отправкой обратно в графический интерфейс (GUI).
Наконец, GUI отправляет текст расширениям, перед его отображением.