Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Извлечение и запись данных из памяти Добавлено: 07.06.04 13:19  

Автор вопроса:  Sanchez | Web-сайт: fasco.nm.ru | ICQ: 330837479 

Думаю все видели, и работали с ArtMoney(для тех кто всеже незнает такой - это такая программа для поиска в памяти определенной программы, определенного значения, например можно найти значение денег в игре и поставить их на unlimited или тп.), так вот может кто знает как реализовать на VB работу с памятью определенной программы?

Ответить

  Ответы Всего ответов: 14  

Номер ответа: 1
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #1
Добавлено: 07.06.04 13:49
ReadProcessMemory-WriteProcessMemory

Ответить

Номер ответа: 2
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #2
Добавлено: 07.06.04 14:00
Был пример замены у процесса (виндового калькулятора) названия кнопки Backspace... но он куда-то потерялся :(

Ответить

Номер ответа: 3
Автор ответа:
 Fallout



Вопросов: 10
Ответов: 387
 Web-сайт: mudator.by.ru
 Профиль | | #3
Добавлено: 07.06.04 15:31
Как то помню делал небольшую утилитку для одной игрушки... ну вот передедаёшь внеё хендл программы.. через FindWindow я обычно его нахожу... адрес длинну того сколько читаем и куда читаем... я не призываю использовать именно эту функцию просто как пример того как можно прочитать что либо из памяти процесса

Public Function ReadClientValue(ByRef clientHandle As Long, ByRef Address As Long, ByRef lenBytes As Long, ByRef retBytes As Long) As Long
    ;Dim procId As Long, procHandle As Long
    GetWindowThreadProcessId clientHandle, procId
    procHandle = OpenProcess(PROCESS_ALL_ACCESS, False, procId)
    ReadProcessMemory procHandle, Address, retBytes, lenBytes, 0&
    CloseHandle procHandle
End Function

Ответить

Номер ответа: 4
Автор ответа:
 Fallout



Вопросов: 10
Ответов: 387
 Web-сайт: mudator.by.ru
 Профиль | | #4
Добавлено: 07.06.04 15:31
Как то помню делал небольшую утилитку для одной игрушки... ну вот передедаёшь внеё хендл программы.. через FindWindow я обычно его нахожу... адрес длинну того сколько читаем и куда читаем... я не призываю использовать именно эту функцию просто как пример того как можно прочитать что либо из памяти процесса

Public Function ReadClientValue(ByRef clientHandle As Long, ByRef Address As Long, ByRef lenBytes As Long, ByRef retBytes As Long) As Long
    ;Dim procId As Long, procHandle As Long
    GetWindowThreadProcessId clientHandle, procId
    procHandle = OpenProcess(PROCESS_ALL_ACCESS, False, procId)
    ReadProcessMemory procHandle, Address, retBytes, lenBytes, 0&
    CloseHandle procHandle
End Function

Ответить

Номер ответа: 5
Автор ответа:
 Sanchez



ICQ: 330837479 

Вопросов: 1
Ответов: 13
 Web-сайт: fasco.nm.ru
 Профиль | | #5
Добавлено: 07.06.04 16:57

Sharp:

Public Declare Function ReadProcessMemory Lib "kernel32" (ByVal hProcess As Long, lpBaseAddress As Any, lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long

Public Declare Function WriteProcessMemory Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Long, lpBaseAddress As Any, lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long

Не со всеми параметрами разобрался:

hProcess - hwnd программы к которой обращаемся

lpBaseAddress - что это и откуда берется ???

lpBuffer - что это и откуда берется ???

nSize - с какого адреса берем/ложим данные

lpNumberOfBytesWritten - сколько берем/ложим

И я не понял, куда возвращается значение взятое из памяти(при чтении), и какой параметр отвечает за запись значений в память?

2 Fallout: спасибо за ответ, но я попробую свой код...


 

Ответить

Номер ответа: 6
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #6
Добавлено: 07.06.04 17:33
hProcess - хандл процесса, а не хандл окна
lpBaseAddress - где/куда читать/писать
lpBuffer - куда/что записываем прочитанное/пишем в память
nSize - сколько читаем/пишем
lpNumberOfBytesWritten - сколько получилось прочитать/записать

Ответить

Номер ответа: 7
Автор ответа:
 Sanchez



ICQ: 330837479 

Вопросов: 1
Ответов: 13
 Web-сайт: fasco.nm.ru
 Профиль | | #7
Добавлено: 08.06.04 11:10

Чето нифига у меня не работает. Можешь примерчик набросать чтения/записи? Например игра сапер(у меня ВинХР), изменение количества оставшихся флажков(в игре левое число это флажки, правое - время). Адрес флажков - 01005194 , тип - целое число 8 байт

Ответить

Номер ответа: 8
Автор ответа:
 Fallout



Вопросов: 10
Ответов: 387
 Web-сайт: mudator.by.ru
 Профиль | | #8
Добавлено: 08.06.04 12:34
я кинул же пример +)

Ответить

Номер ответа: 9
Автор ответа:
 Sanchez



ICQ: 330837479 

Вопросов: 1
Ответов: 13
 Web-сайт: fasco.nm.ru
 Профиль | | #9
Добавлено: 09.06.04 06:34

Ну в 3 часа ночи и не такой ответ напишешь :) а твой пример не работает(может я всетаки чтото не так делаю), вот мой проект, если есть возможность посмотри, может найдешь чего, или просто напиши готовый проект на чтение/запись и выложи, я посмотрю.

http://fasco.nm.ru/files/read.rar

Ответить

Номер ответа: 10
Автор ответа:
 Fallout



Вопросов: 10
Ответов: 387
 Web-сайт: mudator.by.ru
 Профиль | | #10
Добавлено: 09.06.04 09:17
Ты что то не так делаешь =)

Ответить

Номер ответа: 11
Автор ответа:
 Sanchez



ICQ: 330837479 

Вопросов: 1
Ответов: 13
 Web-сайт: fasco.nm.ru
 Профиль | | #11
Добавлено: 09.06.04 10:49

Скачай то что я выложил - это и есть то что я делаю.

Ответить

Номер ответа: 12
Автор ответа:
 Sanchez



ICQ: 330837479 

Вопросов: 1
Ответов: 13
 Web-сайт: fasco.nm.ru
 Профиль | | #12
Добавлено: 10.06.04 15:33
Все, полностью разобрался.

Ответить

Номер ответа: 13
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #13 Добавлено: 10.06.04 17:04
Скинь и мне, я тоже этим вопросом интерисовался, но мне так и не объяснили :( , я бы был очень рад готовому примеру.

no_detect@mail.ru

Ответить

Номер ответа: 14
Автор ответа:
 Sanchez



ICQ: 330837479 

Вопросов: 1
Ответов: 13
 Web-сайт: fasco.nm.ru
 Профиль | | #14
Добавлено: 11.06.04 05:14
ок, щас скину.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам