![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
lips |
|
|||
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 21.10.2012 Репутация: нет Всего: нет |
Прочитал пару статей... где с помощью ArtMoney и VisualC++ написали тренер для игры...
опираясь на эти записи написал код:
пытаюсь взломать пинбол(стандартн), но почему-то не работает... пишу в рад студии Уважаемые программисты гляньте на несколько строчек кода найдите ошибку! |
|||
|
||||
Zhunko |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 75 Регистрация: 4.11.2009 Репутация: нет Всего: нет |
По моему, чтение неправильно. Почему-то приём в ту же переменную, что содержит адрес.
Возможно это правильно в смысле, что работать будет, но это неправильно так писать. Да, ещё там, в первом параметре должен быть дескриптор процесса, а не окна. Это сообщение отредактировал(а) Zhunko - 6.11.2012, 20:29 |
|||
|
||||
feodorv |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2214 Регистрация: 30.7.2011 Репутация: 11 Всего: 45 |
8 байт - это нормально? У Вас sizeof(int) равна 8 байтам? Не четырём? Добавлено через 1 минуту и 59 секунд Поддерживаю вопрос. Это значение будет затёрто при ReadProcessMemory. Зачем вообще читать, когда писать надо? -------------------- Напильник, велосипед, грабли и костыли - основные инструменты программиста... |
|||
|
||||
Zhunko |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 75 Регистрация: 4.11.2009 Репутация: нет Всего: нет |
Это тоже неправильно. Но не имеет значения здесь. При записи INT не испортит чужую память. Адрес-то правильный, наверно. ![]() Получается, что сначала читает адрес. Модифицирует уже существующий. Пишет по новому адресу, что прочитан ранее. Это сообщение отредактировал(а) Zhunko - 6.11.2012, 20:32 |
|||
|
||||
lips |
|
|||
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 21.10.2012 Репутация: нет Всего: нет |
насчёт той же переменной я описался, а вот что там с хэндлом процесса? как его узнать?
а CreateProcess необязательно использовать? спасибо за ответы Добавлено через 56 секунд у меня артмания выдала что там 8 байт.. |
|||
|
||||
Zhunko |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 75 Регистрация: 4.11.2009 Репутация: нет Всего: нет |
У меня так сделано:
static можно убрать. |
||||
|
|||||
lips |
|
|||
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 21.10.2012 Репутация: нет Всего: нет |
Zhunko спасибо! сейчас буду пробовать
|
|||
|
||||
lips |
|
|||
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 21.10.2012 Репутация: нет Всего: нет |
Получилось как то так:
но естественно не работает
Подскажите? Это сообщение отредактировал(а) lips - 6.11.2012, 22:09 |
|||
|
||||
Zhunko |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 75 Регистрация: 4.11.2009 Репутация: нет Всего: нет |
Прочитайте оттуда, что записали, и сравните. Возможно, что работает, но Ваши ожидания иные от той программы.
Это сообщение отредактировал(а) Zhunko - 6.11.2012, 22:36 |
|||
|
||||
lips |
|
||||
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 21.10.2012 Репутация: нет Всего: нет |
значение "a" не изменяются |
||||
|
|||||
Zhunko |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 75 Регистрация: 4.11.2009 Репутация: нет Всего: нет |
Надо бы весь код посмотреть.
|
|||
|
||||
lips |
|
|||
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 21.10.2012 Репутация: нет Всего: нет |
GetLastError(); возвращает 87 неверный параметр
хелп! Добавлено через 1 минуту и 59 секунд
ну это и так весь код )) Добавлено через 7 минут и 55 секунд вот что удалось выяснить: после HandleWindow = FindWindowA("Window", "Пинбол для Windows - \"Звездный юнга\""); 2: Общая ошибка после GetWindowThreadProcessId(HandleWindow, &PID); 1400: Недопустимый дескриптор окна. ну а дальше пошло поехало... как исправить? |
|||
|
||||
Zhunko |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 75 Регистрация: 4.11.2009 Репутация: нет Всего: нет |
Вы, что-то про 8 байт говорили?
Может так попробывать:
Ещё поставте анализ ошибок после каждой функции. Надо привыкать сразу так писать с исключениями. Пример в моём методе. Так сразу ошибки проявляются. Это сообщение отредактировал(а) Zhunko - 6.11.2012, 22:52 |
|||
|
||||
lips |
|
||||
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 21.10.2012 Репутация: нет Всего: нет |
аа всё всё всё разобрался всем спасибо!! я тупанул вот так надо было писать
вот код всё работает!! всем ещё раз спасибо!!
Добавлено через 1 минуту и 19 секунд а и ему всёравно что 8 что 4... работает в любом случае =) |
||||
|
|||||
Zhunko |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 75 Регистрация: 4.11.2009 Репутация: нет Всего: нет |
FindWindow() Что Вы за параметры туда вставляете? |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |