26 / 26 / 4
Регистрация: 20.07.2012
Сообщений: 399
Записей в блоге: 1
.NET 3.x

Код, который должен как бы замораживать адрес на подобие CheatEngine

10.09.2012, 17:11. Показов 4871. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
...Добрый день.

не знаю как справиться с проблемой..прогуглил вест интернет ,встречался подобный вопрос но так и не ответили на него...

Думаю стоит спросить у знатоков...

итак суть..

есть две кнопочки "вкл" и "выкл"

когда нажимаю вкл то срабатывает таймер2в самом таймере2 лежит чудо код который должен как бы замораживать адрес на подобе CheatEngine)
нажимаю кнопку "выкл" таймер останавливается

вопрос: как мне сделать подобие заморозки ЗНАЧЕНИЯ АДРЕСА как в CheatEngine..

и ещё допистим вот сам указатель на адрес "Play+426E8B" от него нужно и отталкиваться!

вот темка [Ссылка на форум]

если нарушил правила прошу удалить ссылку на сторонний сайт...просто там есть что то для Делфи

Добавлено через 16 минут
есть какието предложения7

Добавлено через 1 час 17 минут
хелп ми..
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.09.2012, 17:11
Ответы с готовыми решениями:

Преобразование HEX в адрес в CheatEngine
Привет всем! Дизассемблирую свою программку в CheatEngine. Там есть такая команда: 00690498 - E8 0B10C06F - call clr.dll+14A8 ...

Код который должен подсчитывать кол-во набранных баллов
То что пришло в голову. Где у меня нарушена логика? Синтаксических ошибок не выводит. <!DOCTYPE html> <html...

При нажатии кнопки работает код,который не должен работать
Всем привет. Суть такова: когда человек заходит на страницу проверяется существование переменной, если она есть - выполняется exit(); ...

16
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8729 / 3681 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
10.09.2012, 17:27
Цитата Сообщение от HPB Посмотреть сообщение
заморозки ЗНАЧЕНИЯ АДРЕСА
Откуда ж вы такие определения берете...
Цитата Сообщение от HPB Посмотреть сообщение
как в CheatEngine
Без понятия как в CheatEngine (что это такое знаю только из справки), но пока 2 варианта могу предложить:
  1. Найти нужное значение в памяти приложения и по таймеру его перезаписывать на нужное (Read/WriteProcessmemory);
  2. Занопить определенные инструкции в приложении которые меняют нужное значение (для этого может понадобится смещение, "Play+426E8B" очень на это похоже). Для этого нужно воспользоваться дизассемблером/отладчиком, и возможно придется использовать дизассемблер длин.
Цитата Сообщение от HPB Посмотреть сообщение
"Play+426E8B" от него нужно и отталкиваться!
Мне этот адрес совершенно ни о чем не говорит, что там - я без понятия, и что с ним делать тоже без понятия, поэтому дам только совет: ищите адрес по которому расположена функция Play и прибавляете к нему значение 426E8B.
0
26 / 26 / 4
Регистрация: 20.07.2012
Сообщений: 399
Записей в блоге: 1
10.09.2012, 17:34  [ТС]
Найти нужное значение в памяти приложения и по таймеру его перезаписывать на нужное (Read/WriteProcessmemory);


я и хотел использовать таймер для перезаписи значения в адрес..

пример можно?
C#
1
2
3
IntPtr hProcess = OpenProcess(0xf0fff, false, (int)this.GetProcess("Play.exe"));
            int Adress = 0x00436427;//адресс
            byte[] ByteF = new byte[] { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };//байты для замены
открытие процесса поиск адреса и замена байта но мне это ну нужно...мне нужно как я говорил перезапись значения
0
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8729 / 3681 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
10.09.2012, 17:48
C#
1
2
3
4
5
6
7
8
9
10
11
12
        [DllImport("kernel32.dll", SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        static extern bool WriteProcessMemory(
            IntPtr hProcess,
            IntPtr lpBaseAddress,
            byte[] lpBuffer,
            int nSize, // для x86
            out int lpNumberOfBytesWritten
            );
            
        int writed;
        WriteProcessMemory( hProcess, (IntPtr)0x00436427, ByteF, ByteF.Length, out writed );

Не по теме:

Цитата Сообщение от HPB Посмотреть сообщение
мне нужно как я говорил перезапись значения
Цитата Сообщение от HPB Посмотреть сообщение
как мне сделать подобие заморозки ЗНАЧЕНИЯ АДРЕСА
...

0
26 / 26 / 4
Регистрация: 20.07.2012
Сообщений: 399
Записей в блоге: 1
10.09.2012, 17:53  [ТС]
ну так ЭТО И БУДЕТ ОДНО И ТОЖЕ....что если я буду перезаписывать значение адреса->значение адреса будет замороженное!!!!!!!


могли бы прокомментировать код.. некоторые строки чтоб понятнее стало и опять x32 битки гуляют чтоли
0
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8729 / 3681 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
10.09.2012, 17:58
HPB, что там комментировать? С 1 по 9 - описание прототипа функции WriteProcessMemory, 11 - объявление переменной, 12 - вызов WriteProcessMemory.
0
26 / 26 / 4
Регистрация: 20.07.2012
Сообщений: 399
Записей в блоге: 1
10.09.2012, 18:02  [ТС]
нужно ли открывать процесс?
C#
1
IntPtr hProcess = OpenProcess(0xf0fff, false, (int)this.GetProcess("Play.exe"));
или код который вы написали уже полный?
0
 Аватар для LeniumSoft
1454 / 847 / 150
Регистрация: 06.06.2012
Сообщений: 2,370
10.09.2012, 18:13
Цитата Сообщение от HPB Посмотреть сообщение
нужно ли открывать процесс?
Да перед тем кодом нужно открыть.
0
26 / 26 / 4
Регистрация: 20.07.2012
Сообщений: 399
Записей в блоге: 1
10.09.2012, 18:32  [ТС]
всё равно множество ошибок ..

стоило бы сказать чтоб я уж отстал : (
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
10.09.2012, 19:12
стоило бы сказать чтоб я уж отстал : (

Не по теме:

Это вам стоило бы хоть что-то самому сделать или быть по крайней мере благодарным, что помогают, учитывая, что вы не поймете большую часть советов, а просите готовый код, который вам нужен, причем нахаляву.

0
26 / 26 / 4
Регистрация: 20.07.2012
Сообщений: 399
Записей в блоге: 1
10.09.2012, 19:20  [ТС]
C#
1
 WriteProcessMemory( hProcess, (IntPtr)0x00436427, ByteF, ByteF.Length, out writed );
на этот кусочек кода ругается..мол индефекаторы типы и множества using..

C#
1
 //DllImport("kernel32.dll", SetLastError = true)]
это я закоментировал

Добавлено через 37 секунд
Цитата Сообщение от Psilon Посмотреть сообщение

Не по теме:

Это вам стоило бы хоть что-то самому сделать или быть по крайней мере благодарным, что помогают, учитывая, что вы не поймете большую часть советов, а просите готовый код, который вам нужен, причем нахаляву.

возможно это так : (
0
 Аватар для LeniumSoft
1454 / 847 / 150
Регистрация: 06.06.2012
Сообщений: 2,370
10.09.2012, 19:44
Цитата Сообщение от HPB Посмотреть сообщение
это я закоментировал
Зачем? Это необходимый импорт функции из библиотеки. Чтоб у вас всё заработало не надо ничего комментировать!

Добавлено через 1 минуту
А кавычка перед DllImport у вас была?
0
10.09.2012, 21:31

Не по теме:

веселят меня такие темы, вроде задают такие вопросы умные - указатели, память, замораживать адрес и т.д
а на деле через 10 постов автору темы начинают объяснять как расставить скобки и точки с запятой в коде :D

0
 Аватар для LeniumSoft
1454 / 847 / 150
Регистрация: 06.06.2012
Сообщений: 2,370
10.09.2012, 23:40
Цитата Сообщение от m0nax Посмотреть сообщение
как расставить скобки и точки с запятой в коде
Согласен! Народу впадлу книжки читать! Сразу надо читы для игр писать и хп себе замораживать!
0
26 / 26 / 4
Регистрация: 20.07.2012
Сообщений: 399
Записей в блоге: 1
12.09.2012, 21:02  [ТС]
какие хп.. о чём речь....да может я что то понимаю роясь в клиенте игры.. но и сеть я прорыскивал в поиске ответа

Добавлено через 26 минут
C#
1
2
3
4
5
IntPtr hProcess = OpenProcess(0xf0fff, false, (int)this.GetProcess("Play.exe"));
            int Adress = 0x11D0EA0;//адресс 011D6EE0
            byte[] ByteF = new byte[] { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };//байты для замены
            UIntPtr uIntPtrF;
            WriteProcessMemory(hProcess, (IntPtr)0x11D0EA0, ByteF, 6, out uIntPtrF);
вот так ошибок нет но не работает : (

Добавлено через 14 минут
что означает "6"?
и мне просто нужно открыть процесс найти адрес в виду Play+022DFEF0+30 затем каким то образом узнать значение и потом постоянно его держать тобишь морозить тобишь перезаписывать!

Добавлено через 25 минут
0x - ' это 16чная система? ведь так тоесть мне нужно открыть калькулятор выбрать там инженерный потом тип HEX затем вставить адрес 022DFEF0 но как быть с +30?

Добавлено через 2 часа 1 минуту
есть варианты?

Добавлено через 2 часа 2 минуты
тему прошу закрыть т.к решил проблему использую библиотеку "VAMemory"
0
Эксперт С++
 Аватар для _lunar_
3701 / 2836 / 451
Регистрация: 03.05.2011
Сообщений: 5,193
Записей в блоге: 21
13.09.2012, 08:21
Цитата Сообщение от HPB Посмотреть сообщение
что означает "6"?
переменная типа uint - количество ваших байтов для замены.

Цитата Сообщение от HPB Посмотреть сообщение
0x - ' это 16чная система? как быть с +30?
да.
+30 это смещение (тоже в 16-ричной) и скорее всего не одно. Вы ведь пишете про CheatEngine, вот и ищите в нём базовый адрес и все смещения.
0
26 / 26 / 4
Регистрация: 20.07.2012
Сообщений: 399
Записей в блоге: 1
13.09.2012, 20:58  [ТС]
отвечу что странным образом.. может кто работал с СЕ есть такая функция у него как поиск указателей или же инструкции не больно сильно отличается ...так вот если найти то адрес как бы будет зеленый намикая на то что адрес у нас "стат." тобишь постоянный даже после перезапуска игры но когда отобрадаеся в виде 0101584 затем чтобы скопировать нужно нажать на него жму открывается уже в виде "Game.exe"+584 чудо чудо.. и решил тут попробовать поиграть с сапёром и о чудо я утсановил постоянное кол-во флажков неизменным!


ТЕМУ ОФ Я РЕШИЛ ПРОБЛЕМУ
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.09.2012, 20:58
Помогаю со студенческими работами здесь

написал алгоритм который должен переворачивать число,(например вводим 321 должен вывести 123) но он не работает
#include <iostream> using namespace std; int main() { int x,a,k=1,y=0,t; cin>>x; t=x; ...

Куда "воткнуть" код, который должен исполняться постоянно?
Привет всем! Куда "воткнуть" код, который должен исполняться постоянно. "Втыкаю" в Form1() конструктор, код исполняется один раз...

Прокомментируйте, пожалуйста, код, который получает адрес до "LoadLibrary"
Здравствуйте, я нашёл в интернете такой код, который супер магическим способом получает адрес до "LoadLibrary" O_o и мне очень...

У меня есть код на WinApi , который должен выводить "Hello world", но тут что то не так! помогте найти пожалуйста
#include <windows.h> HWND MainWindowHandle =0; bool InitWindowsApp(HINSTANCE instanceHandle, int show); int...

Как создать контрол, который при конструировании не должен отображаться на форме?
Может кто подскажет, как создать контрол, который при конструировании не должен отображаться на форме, а должен находиться внизу в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru