59 / 56 / 8
Регистрация: 22.07.2011
Сообщений: 436
|
||||||
1 | ||||||
Объясните как пользоваться WriteProcessMemory()22.07.2011, 23:59. Показов 17761. Ответов 5
Метки нет (Все метки)
Привет всем обитателям этого форума=)
Объясните пожалуйста как пользоваться WriteProcessMemory(). То что нужно сначала найти процесс, потом открыть его - это я знаю. Меня больше интерисует вот что:
0
|
22.07.2011, 23:59 | |
Ответы с готовыми решениями:
5
объясните как пользоваться Visual Studio 2008 а именно работу с С++? как пользоваться программатором для Whirlpool, раздобыл программатор, а как им пользоваться я не знаю WriteProcessMemory WriteProcessMemory |
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
23.07.2011, 00:14 | 2 |
ну тут ничего не поделаешь - расположение данных в процессе может от раза к разу меняться, и вы не можете на это повлиять
0
|
59 / 56 / 8
Регистрация: 22.07.2011
Сообщений: 436
|
|
23.07.2011, 01:00 [ТС] | 3 |
А каким же образом тогда пишут разные трейнеры на игры, в которых расположение значений меняется после перезапуска?
0
|
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
|
|
23.07.2011, 01:10 | 4 |
в трейнерах типа ArtMoney пользователь вводит значение переменной в памяти и потом ее измененное значение через некоторое время. Трейнер сканирует память процесса и ищет расположение переменной, потом меняет значение, конечно попутно анализируя права на страницы виртуальной памяти, расположение в памяти
в трейнерах, патчах под определенные игры, думаю, путем дизассемблирования устанавливают в ходе выполнения программы где должна появиться переменная, и меняют значение
2
|
59 / 56 / 8
Регистрация: 22.07.2011
Сообщений: 436
|
|
23.07.2011, 01:39 [ТС] | 5 |
Я думал всё намного проще=) А есть ли какие нибудь API функции для сканирования памяти?
Добавлено через 11 минут И кстати. В артмани поиск значения идёт полностью в ручную, т.е. нельзя задать какой либо алгоритм. А в других тренерах, где нужно просто нажать кнопочку, поиск не ведётся. Значит адреса заранее известны.
0
|
59 / 56 / 8
Регистрация: 22.07.2011
Сообщений: 436
|
||||||
27.07.2011, 01:47 [ТС] | 6 | |||||
Чуть чуть поковырялся и нашёл сам ответ))
Кроме как просто указателей, есть ещё смещение (Блин, как будто без меня этого не знают=) Например: Указатель 0x10493AC при смещении +0x1 указывает на адресс 0x1314CFB0. при смещении +0x2 этот же указатель будет указывать на 0x1314CFB1. те вот что надо было сделать в моём случае:
2
|
27.07.2011, 01:47 | |
27.07.2011, 01:47 | |
Помогаю со студенческими работами здесь
6
WriteProcessMemory - lpBuffer Проблемы с ReadProcessMemory, WriteProcessMemory Segfault после WriteProcessMemory WriteProcessMemory нюансы использования Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |