|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#16
|
|||
|
|||
а можите подсказать какие небуть норм программы типа артмани
для работы с памятью других программ некак немогу научиться находить указатели( (пробывал через отладчик игра вылетает) |
#17
|
||||
|
||||
Проще всего, играть честно.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#18
|
|||
|
|||
Цитата:
уже есть такие программы которые делают то что я пытаясь сделать я лиш хочу повторить то что они делают, просто делать программы для игры наверное интересней (особенно если раньше играл в эту игру и у тя есть знакомые которые в неё шас играют) чем просто брать искать в каком нибуть блакноте указатели для того чтоб научиться их искать, на игре это делать болиее интересние |
#19
|
|||
|
|||
а значенте вот этого: openprocess();
у меня почемуто всегда = 0 вообщем делаю так: Код:
procedure TForm1.findClick(Sender: TObject); begin idproc:=GetWindowThreadProcessId(Wnd); pidproc.Caption:=IntToStr(idproc); hproc:=OpenProcess(PROCESS_VM_READ, False, idproc); hprocp.Caption:=IntToStr(hproc); end; или оно и должно = 0? Последний раз редактировалось unity, 30.10.2011 в 13:41. |
#20
|
||||
|
||||
Цитата:
wnd как находишь?? Адресок то нужный нашел?? |
#21
|
|||
|
|||
Цитата:
Код:
procedure TForm1.zahvatClick(Sender: TObject); begin hwndtmr.Enabled:= Not(hwndtmr.Enabled); end; procedure TForm1.hwndtmrTimer(Sender: TObject); begin if (getasynckeystate($24)<>0) then //условия на то чтоб было нажатие кнопки begin GetCursorPos( Pos ); //определяет координаты курсора Wnd:= WindowFromPoint( Pos );//запоминает хвид окна который под курсорам hwndtmr.Enabled:= Not(hwndtmr.Enabled); ShowMessage('окно захваченно!'); hwndpole.Caption:=inttostr(wnd); end end; хэндл окна находи правельно и pid тоже вроде правельно а какой адресок надо еще искать? Последний раз редактировалось unity, 30.10.2011 в 15:50. |
#22
|
||||
|
||||
находи так: wnd:=findwindow(nil,'Название приложения');
Адрес, в котором хранится значения "жизни" |
#23
|
|||
|
|||
все получилось, ошибка была в
idproc:=GetWindowThreadProcessId(Wnd, @(тут нехватало переменной дапустим а)); hproc:=OpenProcess(PROCESS_VM_READ, False,(и тут нехыватало переменной а) ); вазник такой вопрос как найти в пмяти программы адреса которые хранят опред значение (напримерр мне нужны все ячейки памяти программы которые содержат текст help) т.е тоже что делает арт мани когда жмеш найти значения 123 и те даеться такой список адресов какя функция делает это в делфи? Последний раз редактировалось unity, 30.10.2011 в 17:32. |
#24
|
||||
|
||||
объясни, пожалуйста, что ты хочешь сделать??????????
|
#25
|
|||
|
|||
Цитата:
на данном этапе мне нада просканировать всю память игры и найти адреса где храниться определенное значение пример: найти в памяти игры ячейки содержашие слово "help" как такое сделать? (не в артмани конечно, а в делфи) |
#26
|
||||
|
||||
зачем этот сканер делать в delphi, чем artmoney не устраивает...
|
#27
|
|||
|
|||
Цитата:
чтобы научиться делать такое в delphi |
#28
|
||||
|
||||
Цитата:
readprocessmemory() и да, по-моему, тема этой ветки форума была другой........... |
#29
|
|||
|
|||
насколько я знаю в оперативной памяти, память программы занимает
неприрывнй блок как мне узнать адрес первой и последнией ячейки той области памяти которуя используеться программой |