Вниз
Скачать: CL | DM;

чтение конкретного LBA на винте   Найти похожие ветки 

 
zvm   (2009-12-16 10:08) [0]

Как получить доступ к конкретному лог блоку диска?
Хочу быстро написать такую прогу. Грубо идея такая-
 -пытаюсь прочесть LBA номер N
 -если не читается (смотрю по таймеру), то добавляю в ВАД файл  этот LBA.
 -перебераю все  LBA на винте.

В результате хочу иметь файл ВАД, состоящий целиком из порченных блоков.


 
grammar-nazi   (2009-12-16 15:33) [1]

LBA (Logical Block Addressing) - это название механизма адресации блоков. нельзя "прочесть LBA номер N".
прочитать сектор диска можно - открыть диск с помощью CreateFile и прочитать с помощью, как бы неожиданно это не прозвучало, ReadFile.


 
zvm   (2009-12-16 16:47) [2]

то-то не догнал, извиняюсь.
       BlockRead(FromF, Buf, SizeOf(Buf), NumRead);
Здесь FromF переменная типа file. Там ни дорожек, ни секторов.


 
Anatoly Podgoretsky ©   (2009-12-16 16:53) [3]

Ни о каких BlockRead и речи не было, да и конференция то по WinAPI - вот и смотри там CreateFile и ReadFile, возможно также применение IOCTL функций, например для получение геометрии диска. LBA по адресации совместим с понятием Abslolute Sector и известные для ДОС соответствующие операции, не помню вроде функции 25/26 - в Виндоус через ReadFile


 
brother ©   (2009-12-17 04:08) [4]

http://www.xakep.ru/post/27724/default.asp?print=1
Удачного изучения!


 
zvm   (2009-12-17 09:37) [5]

Большущее спасибо!
Читаю с наслаждением!


 
делфиец   (2009-12-25 19:15) [6]


> Anatoly Podgoretsky ©   (16.12.09 16:53) [3]
> Ни о каких BlockRead и речи не было, да и конференция то
> по WinAPI - вот и смотри там CreateFile и ReadFile, возможно
> также применение IOCTL функций, например для получение геометрии
> диска. LBA по адресации совместим с понятием Abslolute Sector
> и известные для ДОС соответствующие операции, не помню вроде
> функции 25/26 - в Виндоус через ReadFile


Вовсе не обязательно прибегать к этим IOCTL функциям, если знаете размещения структур и их порядок на диске, то можно и так "прямым чтением" он и так весь читается от самого нулевого и до самого последнего байта но только блоками по  ххх байт.


 
Игорь Шевченко ©   (2009-12-25 22:23) [7]

оно конечно хорошо, только нафиг не нужно. ну то есть, вообще нафиг


 
SPeller ©   (2009-12-29 01:09) [8]

а если вад файл на не читаемом блоке? )


 
Anatoly Podgoretsky ©   (2009-12-29 02:56) [9]


> а если вад файл на не читаемом блоке? )

То об этом будет известно.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.069 c
3-1282803008
Nurjanov
2010-08-26 10:10
2013.03.22
[Error] Need imported data reference ($G) to access GUID_NULL f


15-1351086265
Дмитрий С
2012-10-24 17:44
2013.03.22
А что нельзя соединяться с базой через ADO с паролем ";"=


15-1344156481
wl
2012-08-05 12:48
2013.03.22
машинка


15-1344107027
Прогер
2012-08-04 23:03
2013.03.22
Делегаты и функторы.


15-1331018645
Unknown user
2012-03-06 11:24
2013.03.22
TStringList.AddObject добавление строки вместо TObject




   Наверх