не стал писать этот вопрос в прикреплённую, потому что он не имеет отношения к новичкам. Ситуация: Я хочу записать слово fuck в конкретный сектор одного из своих HDD. Сектор находится либо в размеченной области, либо в не размеченной. ОС windows xp, права system или admin. При необходимости могу запуститься в контексте нужного системного процесса. Жёсткий диск, на который я хочу произвести запись - либо тот же самый, с которого запущена ОС, либо другой (с которого ничего не запущено, например чистый и свежеотформатированный, подключенный к системе) Физического доступа к машине (допустим) нет. Просьба: Проконсультировать, каким образом осуществить задуманное из-под OS Windows XP. Существуют ли winapi функции или готовые функции на асме. заранее спасибо ps "цель" вопроса - любопытство. Никакого конкретного ТЗ, выходящиго за пределы описанного - нет.
на асме существует прерывание Int 13h в винде - вызов этого прерывания через deviceiocontrol или открытия диска как файла \\.\PhysicalDriveN где N- номер диска
не погуглил, когда спрашивал :-( Думал всё сложнее. На винграде оказывается поднимали такую тему http://forum.vingrad.ru/forum/topic-53996/anchor-entry458048/0.html А Крис Касперски написал по raw работе с компакт-дисками не то что статью, а целое исследование http://www.insidepro.com/kk/020/020r.shtml Осталось разобраться со считыванием физических адресов файлов и написать годные обёртки для api ф-ций. Если у кого-то есть готовые функции или сурсы, ориентированные на работу с HDD а не с CD\DVD - буду благодарен. Ps. да, Kaimi, realcoder - всё так, спс) Не ожидал что найти информацию по этому вопросу окажется так просто. Осталось правильно эту теорию закодить)
http://wasm.ru/article.php?article=lockfileswork -- крути вниз до Чтение файла с помощью прямого доступа к диску. И помни про статью 273 УК РФ
спс! отличная статья, жаль лишь что после получения адреса кластеров описанным методом в нтфс, как я понимаю, останется отметка о времени доступа к файлу. Метка эта правда, по-моему хранится в файловом потоке и её можно поправить. Но в каких ещё логах останется событие я не знаю. Тем не менее, если единственная альтернатива - написать свой собственный драйвер для NTFS, то выбор не велик. Разве что в исключительных случаях, если требуется что-нибудь пропатчить с особым цинизмом - можно не спеша читать всё содержимое диска до нахождения нужного, заранее известного фрагмента, а затем патчить это место не имея хендла файла. благодарю всех откликнувшихся) подумать не мог что всё так просто... а законы.. да, законы нужно знать. "Незнание закона не освобождает от ответственности. А вот знание..."