|
0 / 0 / 0
Регистрация: 04.04.2014
Сообщений: 53
|
|
Дамп динамической памяти (Heap)14.05.2014, 09:35. Показов 5382. Ответов 24
Метки нет (Все метки)
Подскажите, как можно получить дамп пользовательского Heap. С помощью каких средств?
Heap создается в программе и надо получить его дамп. Heap я создал, а вот получить дамп не выходит. Добавлено через 23 часа 8 минут Если кто-нибудь знает подскажите, пожалуйста. Нужно получить дамп, а сделать это не выходит, поиск ничего не дал. Добавлено через 15 часов 48 минут Можно ли при помощи Toolhelp32ReadProcessMemory вывести дамп?
0
|
|
| 14.05.2014, 09:35 | |
|
Ответы с готовыми решениями:
24
Оператор delete[]. Как исправить ошибку: Error HEAP CORRUPTED. Откуда утечка памяти? Найти сигнатуру в динамической памяти Определение размера динамической памяти, используемой процессом |
|
Заблокирован
|
|
| 14.05.2014, 11:09 | |
|
а вот по этому поводу моя же тема в этой ветке, там есть ответ Как получить дамп памяти программы, чтоб потом можно было его сохранить и проанализировать?
0
|
|
|
0 / 0 / 0
Регистрация: 04.04.2014
Сообщений: 53
|
|
| 14.05.2014, 11:23 [ТС] | |
|
Спасибо, видел
просто с минидампом не большие проблемы, выводит состояние регистров и не более, и пока пытаюсь решить, хотел поинтерисоватся есть ли другие способы
0
|
|
|
Заблокирован
|
|
| 14.05.2014, 11:28 | |
|
0
|
|
|
Maniac
|
||||||
| 14.05.2014, 17:08 | ||||||
|
Не совсем понял.. это нужно
0
|
||||||
|
0 / 0 / 0
Регистрация: 04.04.2014
Сообщений: 53
|
|
| 14.05.2014, 17:42 [ТС] | |
|
Не совсем, MEMORY_BASIC_INFORMATION использует же только виртуальную память, которая выделяется через VirtualAlloc, а мне бы как-то вывести именно heap. Тоесть я создаю его HeaCreate, выделяю память HeapAlloc и надо чтобы в этом дампе была вот эта куча, под которую я выделил память
0
|
|
|
158 / 148 / 25
Регистрация: 23.01.2011
Сообщений: 319
|
|
| 14.05.2014, 18:16 | |
|
Попробуй воспользоватся HeapWalk http://msdn.microsoft.com/en-u... s.85).aspx
0
|
|
|
0 / 0 / 0
Регистрация: 04.04.2014
Сообщений: 53
|
|
| 14.05.2014, 18:59 [ТС] | |
|
Celly, Пользовался, но это не дамп
ISergey, ну а вроде же MEMORY_BASIC_INFORMATION не видит страницы выделенной под heap Я создал heap размером 1024 байта, но такого размера я не нашел в выводе
0
|
|
|
158 / 148 / 25
Регистрация: 23.01.2011
Сообщений: 319
|
||
| 14.05.2014, 19:07 | ||
Узнать размер страницы можно функцией GetSystemInfo
1
|
||
|
0 / 0 / 0
Регистрация: 04.04.2014
Сообщений: 53
|
|
| 15.05.2014, 12:04 [ТС] | |
|
Мне нужно отобразить дамп такого вида, возможно ли это сделать?
0
|
|
|
0 / 0 / 0
Регистрация: 04.04.2014
Сообщений: 53
|
|
| 16.05.2014, 10:16 [ТС] | |
|
Если это осуществимо то хоть примерно, какими функциями нужно воспользоватся?
Добавлено через 15 часов 25 минут Помогите, пожалуйста, задача следующая: я ввожу адрес и с этого адреса выводится дамп. Такое возможно сделать?
0
|
|
|
Заблокирован
|
||
| 16.05.2014, 10:57 | ||
![]() Используй ReadProcessMemory, указывай хэндл собственного процесса, указывай адрес и размер и читай чё хочешь, если конечно у тебя есть доступ к памяти процесса (PROCESS_VM_READ)
0
|
||
|
0 / 0 / 0
Регистрация: 04.04.2014
Сообщений: 53
|
||||||
| 16.05.2014, 14:18 [ТС] | ||||||
|
Читаю память собственного процесса по адресу выделенной памяти. Так?
0
|
||||||
|
Заблокирован
|
|||
| 16.05.2014, 14:21 | |||
|
0
|
|||
|
0 / 0 / 0
Регистрация: 04.04.2014
Сообщений: 53
|
|
| 16.05.2014, 14:50 [ТС] | |
|
Буфер этот у меня объявлен как LPVOID bufff[256]
В него ничего больше не записывается, а ниже у меня обработчик кнопки которая освобождает выделеную память, и после того как читаю память мне почему то выводит сообщение что выделенная память освобождена хотя там и тут 2 разных буфера(код чуть позже приведу, если надо)
0
|
|
|
Заблокирован
|
||||||
| 16.05.2014, 15:59 | ||||||
|
код покажи
Добавлено через 1 час 1 минуту Ладно, накатал тебе пример, в нём читаются из памяти процесса переменные, записанные туда в статике (в динами будет тоже самое, это просто что б тебе понятней было), хотя основные приёмы и функции тебе уже показал в 5-м посте ISergey, в том числе показал и то, что делать, если ReadProcessMemory не читает память, в общем вот - запускай, смотри и изучай. (когда будешь копировать в новый проект, не забудь отключить прекомпайл хедеры )
0
|
||||||
|
0 / 0 / 0
Регистрация: 04.04.2014
Сообщений: 53
|
||||||
| 16.05.2014, 20:37 [ТС] | ||||||
|
Блин я все равно не очень понял, я считываю 20 байт, они считались, судя по тому что мне вывело 20 строк в листбоксе. Но строки пустые т.е мне вывело 20 пустых строк
0
|
||||||
|
0 / 0 / 0
Регистрация: 04.04.2014
Сообщений: 53
|
||||||
| 17.05.2014, 00:13 [ТС] | ||||||
|
Если сделать с начального адреса региона то вроде бы выводит, но выводит одно и тоже значение
0
|
||||||
|
Заблокирован
|
|
| 17.05.2014, 06:49 | |
|
Я уже устал тут многим повторять, ты что, секретарша? Я даже ну беду вчитываться в твой код, тебе уже всё тут пояснили... Мне просто лень. Ты слыхал о таком понятие как минимальный вопрос на форуме? А о таком, который тут все используют активно в разделе С++ для начинающих - напиши код за меня ))) ?
Если ты такой не проницаемый и у тебя остались вопросы, ну тогда уж я не знаю - прикрепляй сюда проект в архиве - так и быть - гляну за тебя нубарь (хотя ник у меня такой же ) и ГЛАВНОЕ - не забудь указать, что конкретно тебя не устраивает или что у тебя не получается - твой проект посмотрю в понедельнеГ Г Г Г )))))) (а пока что - )
0
|
|
| 17.05.2014, 06:49 | |
|
Помогаю со студенческими работами здесь
20
Инспектор динамической памяти процессов Распределение памяти под Stack и Heap Должен ли общий объем графической памяти складываться из зарезервированной (фиксированной) памяти и динамической (DVMT)?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи
и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|