Форум программистов, компьютерный форум CyberForum.ru

Данные по адресу памяти - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.75
Mr.Santiaga
 Аватар для Mr.Santiaga
3 / 3 / 0
Регистрация: 03.11.2010
Сообщений: 72
21.07.2011, 00:56     Данные по адресу памяти #1
У меня есть адрес например 0x11E9B62C как узнать что по нему записанно?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Techno
Вирусоборец
 Аватар для Techno
317 / 119 / 2
Регистрация: 15.07.2011
Сообщений: 293
21.07.2011, 01:13     Данные по адресу памяти #2
Цитата Сообщение от Mr.Santiaga Посмотреть сообщение
У меня есть адрес например 0x11E9B62C как узнать что по нему записанно?
А откуда Вы этот адрес берете?
Mr.Santiaga
 Аватар для Mr.Santiaga
3 / 3 / 0
Регистрация: 03.11.2010
Сообщений: 72
21.07.2011, 01:48  [ТС]     Данные по адресу памяти #3
Цитата Сообщение от Techno Посмотреть сообщение
А откуда Вы этот адрес берете?
Это точка входа + нужное смещение

Добавлено через 11 минут
Все сделал
Techno
Вирусоборец
 Аватар для Techno
317 / 119 / 2
Регистрация: 15.07.2011
Сообщений: 293
21.07.2011, 02:01     Данные по адресу памяти #4
Цитата Сообщение от Mr.Santiaga Посмотреть сообщение
Все сделал
Как?
Mr.Santiaga
 Аватар для Mr.Santiaga
3 / 3 / 0
Регистрация: 03.11.2010
Сообщений: 72
21.07.2011, 02:54  [ТС]     Данные по адресу памяти #5
C++
1
2
3
4
5
6
BOOL ReadProcessMemory( 
HANDLE hProcess, 
LPCVOID lpBaseAddress, 
LPVOID lpBuffer, 
SIZE_T nSize, 
SIZE_T* lpNumberOfBytesRead );
Но проблема все же есть, заключается в том, что значение чаще всего читается как 0.
Проверя с помощью артмани, значения адресов у меня правильные.
rrrFer
Заблокирован
21.07.2011, 06:45     Данные по адресу памяти #6
Mr.Santiaga,
Цитата Сообщение от Mr.Santiaga Посмотреть сообщение
значение чаще всего читается как 0.
неверный тип данных читаете( по адресу записан DWORD, например, а читаете WORD )
неверный размер передаете( 4 аргумент )
проверьте значение, которое вернулось по указателю в 5 аргументе( должно совпадать со значением 4 аргумента ).
хэндл-то верно передаете? (откуда его берете ?). Цитата с мсдн:
hProcess [in]

A handle to the process with memory that is being read. The handle must have PROCESS_VM_READ access to the process.
Mr.Santiaga
 Аватар для Mr.Santiaga
3 / 3 / 0
Регистрация: 03.11.2010
Сообщений: 72
21.07.2011, 13:57  [ТС]     Данные по адресу памяти #7
Я запутался
Можно пример?
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
21.07.2011, 14:33     Данные по адресу памяти #8
Цитата Сообщение от Techno Посмотреть сообщение
Как?
C++
1
2
3
//например нам нужны данные размером sizeof(int)
int *ptr=(int*)0x11E9B62C;
std::cout<<*ptr<<std::endl;//если чтение по этому адресу разрешено, то все будет OK)
Добавлено через 1 минуту
для данного случая (чтение памяти чужого процесса) это, конечно же, не будет работать.
Mr.Santiaga
 Аватар для Mr.Santiaga
3 / 3 / 0
Регистрация: 03.11.2010
Сообщений: 72
21.07.2011, 15:19  [ТС]     Данные по адресу памяти #9
Спасибо, но я уже разобрался.
Вот еще вопрос.
Как мне написать библиотеку в VS? В том плане что нужна библиотека, которую можно будет подключить к проекту на C#, но которая бы не использовала Framework..
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
21.07.2011, 15:48     Данные по адресу памяти #10
Mr.Santiaga, Это ?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.07.2011, 16:44     Данные по адресу памяти
Еще ссылки по теме:

Разработать программу позволяющую получить дамп памяти по адресу содержащему вводимые числа C++
Доступ к произвольному адресу памяти C++
C++ Вызов функции-члена класса по адресу в памяти

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

Или воспользуйтесь поиском по форуму:
Mr.Santiaga
 Аватар для Mr.Santiaga
3 / 3 / 0
Регистрация: 03.11.2010
Сообщений: 72
21.07.2011, 16:44  [ТС]     Данные по адресу памяти #11
Да это оно, но как сменить целевую среду с Freamwork 4 на 2
Yandex
Объявления
21.07.2011, 16:44     Данные по адресу памяти
Ответ Создать тему
Опции темы

Текущее время: 05:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru