Как экспортировать / анализировать файлы из memory.dmp?
Мой компьютер получил синий экран и сохранил всю информацию в файл памяти перед перезагрузкой. У меня есть memory.dmp, и у меня есть несколько очень важных файлов, которые я не сохранил.
Все файлы, которые мне нужно восстановить, были TXT-файлами, которые я открыл в блокноте и не сохранил их. После сбоя компьютера я их потерял. Все были простым текстом.
Я смотрел на такие программы, как windbg, но не смог найти правильного решения. Я начинаю думать, что в файле memory.dmp нет необработанных данных, в нем просто есть логи?
Пожалуйста, покажи мне способ восстановить мои несохраненные файлы из Memory.dmp
Я использую Windows Vista.
4 ответа
Что ж. Это интересное упражнение. Если бы я был вами, то, вероятно, я бы прочитал побайтово (а не весь файл) дампа памяти и зашифровал их в ASCII.
Это, безусловно, не является "элегантным" решением, которое вы ожидаете, и потребуется некоторое время, чтобы просмотреть этот вывод, но вы должны быть в состоянии распознать части ваших текстов и, если повезет, соединить их снова,
Проблема в том, что дамп памяти не содержит необходимых данных в одном месте. Это из-за того, как работают приложения. Они выделяют память частично, а не полный блок за один раз, поэтому данные, хранящиеся в ОЗУ, могут находиться в разных местах ОЗУ, а не в одном чанке, поскольку это сохраняет его на жестком диске.
Итак, для восстановления файлов вам, вероятно, следует проверить файлы целиком и по частям забрать потерянные данные... Переписать их с нуля может быть намного проще.
Во-первых, вы потратите в 10 раз больше времени, чем потребовалось бы для их повторного ввода, пытаясь восстановить любые файлы, с которыми вы работали.
Во-вторых, "файлы", о которых идет речь, не будут существовать как "файлы" в памяти. Он просто будет существовать в виде выделенных блоков памяти (возможно, фрагментированных в нескольких местах) и может даже немного не напоминать конечный результат, который вы помните, просматривая.
В-третьих, файл memory.dmp обычно содержит только память, выделенную отказавшему потоку. Если произошел сбой не вашего редактора, то файл memory.dmp, вероятно, не содержит ничего полезного для вас. Маловероятно, что "блокнот" был тем потоком, который потерпел крах... и даже если бы это было так, вы бы восстановили только один экземпляр блокнота.
Хотелось бы, чтобы я не звучал как придурок из-за того, что сказал это... но именно поэтому вы должны часто экономить.