Здравствуйте, Linuxoid, Вы писали:
L>Как записать (прочитать) один конкретный кластер? Файловые системы FAT/NTFS
Открываешь диск как файл, и просто считываешь с него нужный кластер или записываешь.
Только надо знать размер кластера в Файловой системе.
В NTFS нумерация кластера насинается с ноля, в ФАТе первый кластер имеет номер 2.
Здравствуйте, kankan, Вы писали:
K>Открываешь диск как файл, и просто считываешь с него нужный кластер или записываешь. K>Только надо знать размер кластера в Файловой системе. K>В NTFS нумерация кластера насинается с ноля, в ФАТе первый кластер имеет номер 2.
Просто считываешь — это как? ReadFile? Разве драйвер ntfs/fat даст тебе это сделать?
Здравствуйте, djugasvilly, Вы писали:
D>Здравствуйте, kankan, Вы писали:
K>>Открываешь диск как файл, и просто считываешь с него нужный кластер или записываешь. K>>Только надо знать размер кластера в Файловой системе. K>>В NTFS нумерация кластера насинается с ноля, в ФАТе первый кластер имеет номер 2.
D>Просто считываешь — это как? ReadFile? Разве драйвер ntfs/fat даст тебе это сделать?
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
Здравствуйте, gear nuke, Вы писали:
GN>Здравствуйте, djugasvilly, Вы писали:
D>>Здравствуйте, kankan, Вы писали:
K>>>Открываешь диск как файл, и просто считываешь с него нужный кластер или записываешь. K>>>Только надо знать размер кластера в Файловой системе. K>>>В NTFS нумерация кластера насинается с ноля, в ФАТе первый кластер имеет номер 2.
D>>Просто считываешь — это как? ReadFile? Разве драйвер ntfs/fat даст тебе это сделать?
GN>Да
Только надо открывать не физический диск, а логический (\\.\d: например), так как для физического диска надо
парсить диск, искать партиции и распознавать файловую систему каждой.
Здравствуйте, kankan, Вы писали:
K>>>>Открываешь диск как файл, и просто считываешь с него нужный кластер или записываешь. K>>>>Только надо знать размер кластера в Файловой системе. K>>>>В NTFS нумерация кластера насинается с ноля, в ФАТе первый кластер имеет номер 2.
D>>>Просто считываешь — это как? ReadFile? Разве драйвер ntfs/fat даст тебе это сделать?
GN>>Да
K>Только надо открывать не физический диск, а логический (\\.\d: например), так как для физического диска надо K>парсить диск, искать партиции и распознавать файловую систему каждой.
И да и нет. Там дальше на эту тему много чего написано, и я уже успел развеять парочку своих заблуждений .
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
только там конечно в CreateFile надо том открывать, но об этом в ветке в другом форуме asm уже все написали
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Valery A. Boronin, RSDN Team, linkedin.com\in\boronin
R&D Mgmt & Security. AppSec & SDL. Data Protection and Systems Programming. FDE, DLP, Incident Management. Windows Filesystems and Drivers.
Если нужно это делать не под админом — придется писать драйвер ядра (правда для установки драйвера, скорее всего, потребуются административные привилегии (теоретически драйвера может устанавливать не только админ, однако на практике у обычных пользователей таких прав практически никогда нет) ).
Хорошая новость — драйвер примитивный и пишется за пол дня