Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.05.2015, 16:17   #1
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию Место удаленного файла

Здравствуйте! Возник вопрос: возможно ли через делфи узнать по какому адресу был удален файл?

Идея написать программу, которая восстанавливает файлы (еще один велосипед в карту будет) по запросу в гугле ничего не нашел, возможно не так искал, поэтому решил спросить здесь.

Думаю вот такие вопросы решить нужно будет:
1) Адрес
2) формат
3) проверка на перезаписываемость

Ведь удаление выполняется неполное (в стандартном случае) ПК просто думает что место в памяти свободно, а на самом деле оно хранит информацию, но комп может ее перезаписать.

Код не прошу, летом делать нечего, просто ссылку на ресурсы.

Возможно выбрал не тот язык, при помощи указателей языка Си это было бы проще.

Буду рад любой информации!

СПасибо!)

з.ы. опечатка в заголовке) место удаленного файла, модераторов прошу подредактировать)
from dark to light)

Последний раз редактировалось Вадим Мошев; 02.05.2015 в 16:20.
Алексей_2012 вне форума Ответить с цитированием
Старый 02.05.2015, 16:56   #2
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

..насколько мне известно, эту инфу хранит файловая система, а точнее её файлик $MFT (Master File Table). Попробуй забить в гугл: ntfs mft file
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 02.05.2015, 17:41   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну да. Тут по MFT лазить придется. Только это не два пальца об асфальт. Тут если налазищь не туда куда можно кирдык винту в плане информации. Даже может ОС не стартовать, если ченить напудить в MFT.
http://life-prog.ru/1_11868_osobenno...temi-NTFS.html
http://hackings.ru/publ/1-1-0-129
http://www.programmersforum.ru/showthread.php?t=79094
Ну и так далее.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.05.2015, 19:01   #4
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

Но если файл удален, то в файловой таблице он все равно есть?
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Старый 02.05.2015, 19:05   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну теоретически есть. Если не перезаписан.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.05.2015, 19:15   #6
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

Этот файл представляет собой базу данных, как говориться в источниках, т.. если в стринг лист переслать пути к файлам и проверять на существование, то можно восстановить, или как-то по другому сделать, интересует условие: если файла по пути нет, то создать файл, и по байтно считывать в него данные,...есть ли еще какие-нибудь ресурсы, способные направить меня на путь истинный?
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Старый 02.05.2015, 19:18   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
и по байтно считывать в него данные
Как checkdisk работает знаешь? Побайтно ты считаешь только те фрагменты файла, которые еще ОС не перезаписала чем-то. Иначе получишь ошметки. Да и программы восстановления они в общем то далеко не всегда могут восстановить файл.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.05.2015, 19:33   #8
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

что-то знакомое, т.е предлагаете проверку выполнить сначала на принадлежность двум файлам дабы по байтно не перезаписать ошметки файла?

но вопрос с загрузкой $MFT в список строк остается открытым

ключ v выведит список всех файлов из МФТ?
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Старый 02.05.2015, 20:09   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
предлагаете проверку выполнить сначала
Какую? Я вообще сомневаюсь в целесообразности сего предприятия.
Ладно еще погулять по таблице файлов. Но восстанавливать... Ухо от шледи. Не иначе.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.05.2015, 20:34   #10
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

Цитата:
Я вообще сомневаюсь в целесообразности сего предприятия.
Почему так считаете?

Из таблицы файлов хочу получить пути ко всем файлам, если файл есть, то переход на другую итерацию цикла, если нет, то проверка пути удаленного файла начиная с кластера в котором начало файла удаленного, далее до конца удаленного файла проверять место: если на кластер записана другая информация, то файл восстановить нельзя, иначе создать новый файл и записывать туда информацию покластерно и на завершающем этапе присвоить имя файлу и расширение
или как работает программа recuva
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание удаленного потока Dizelektwo Win Api 8 01.07.2012 16:36
ПО для удаленного доступа HAN Помощь студентам 2 24.07.2011 17:46
Мониторинг удаленного компьютера NBAH1990 Общие вопросы Delphi 4 28.02.2010 08:35
Сбой обновления основного вайла, патч отменен. Сбой CRC основного файла. Naruto63 Помощь студентам 2 21.10.2009 20:28