Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа с винчестером напрямую [D6, D7, Win95/98, WinME, NT4, Win2k, WinXP]


Страницы:   1 2

Tristania ©   (2005-10-15 19:47:00) 

Доброго времеи суток, господа!
Не знал куда разместить этот пост, поэтому расположил сюда(по железу отдельной ветки, вроде бы нет).
Подскажите, кто знает какие-нибудь методы для чтения/записи секторов винчестера из своей программы. В ДОС все это выполняло 13-е прерывание БИОСа, а как можно это реализовать в Винде? Особый интерес представляет ВинНТ/ХР/2000.

Если кто знает - подскажите, это для добрых целей и хотелось бы узнать по-больше методов.
Заранее всем благодарен.


Tristania   (2005-10-17 13:08:00) [21]

Скачал DiskMon, вроде бы то, что нужно(хотя не уверен, что он перехватывает все), но исходного текста нет, также как и дукументации о том, как все это работает.
Кстати, там только ЕХЕ-файл. Может ли он быть и драйвером? Вряд ли. Т.е. прога видимо переходит в нулевое кольцо без драйвера....но это так, лирическое отступление.


Tristania   (2005-10-17 12:52:00) [22]

Спасибо, Eraser.
Но дело в том, что в англ. я не силен, а нет ли где почитать на Ридний Мови?


Eraser   (2005-10-16 20:51:00) [23]


> прога задумает совершить действия с винтом минуя АПИ(через
> тот же АПИ интерфейс), то я уже бду не в силах чем-то ей
> помешать.

см. Alex Konshin ©   (16.10.05 00:34) [9]

Система драйверов windows имеет слоистую структуру, т.е. можно перехватывть что угодно, при желании, просто нужный фильтр-драйвер устанавливать непосредственно перед драйвером, IRP запросы  которого необходимо перехватить.

В большенстве случаев есть готовые решения, опять же см. [9] и http://www.sysinternals.com/


Tristania   (2005-10-16 20:42:00) [24]

Сорри, не АПИ в скобках быть должно было а IDE.


Tristania   (2005-10-16 20:40:00) [25]

Это-то все понятно....
Спасибо, конечно, но как ты наверное понял, это все АПИ. Т.е. уровень не самый низкий и если чья-нибудь прога задумает совершить действия с винтом минуя АПИ(через тот же АПИ интерфейс), то я уже бду не в силах чем-то ей помешать.
Но задача для меня уже не такая страшная. Я вот тут начитался, что можно написать драйвер-перехватчик DRx регистров и теперь буду рулить в этом направлении. Так что ребята, спасибо всем, кто попытался помочь. Дальше уже сам.
Ветку можно считать закрытой.


Eraser   (2005-10-16 18:37:00) [26]


> Tristania ©   (16.10.05 15:18) [10]
>
> но еще и форматирование...

SHFormatDrive + F1


Tristania   (2005-10-16 15:18:00) [27]

Перехват не только секторов, но еще и форматирование...


Alex Konshin   (2005-10-16 00:34:00) [28]

Tristania ©   (15.10.05 21:47) [5]
Перехватывать обращения к файлам? Тогда драйвер IFS.
Накой черт может понадобиться перехват чтения секторов я ума не приложу.
Это дурно пахнет.


Anatoly Podgoretsky   (2005-10-15 22:32:00) [29]

Это АПИ, но только ДОС


wp2   (2005-10-15 22:27:00) [30]

int 13h

Правда это не API...


Eraser   (2005-10-15 22:25:00) [31]


> Tristania ©   (15.10.05 21:47) [5]

Ну тогда почти 100% драйвер писАть надо. Загляни на сайт http://www.sysinternals.com/и глянь программу Filemon. Примерно такое интересует?


Tristania   (2005-10-15 21:47:00) [32]

Дело в том, что изначальная задача несколько другая.
Мне нужно написать прогу, которая будет перехватывать обращения других прог к винчестеру(к его секторам, etc) и при необходимости делать редирект.
Поэтому, я решил сначала узнать по-больше возможных способов работы с винтом, а уж потом писать перехватчики.
Вот так....сорри за каламбур.


Eraser   (2005-10-15 21:16:00) [33]


> Tristania ©   (15.10.05 20:54) [3]


>  Еще есть идеи?

Для полноценной работы в данном случае надо драйвер ядра делать.


Tristania   (2005-10-15 20:54:00) [34]

Спасибо. Один вариант есть. Нашел пока по IDE портам и DMA. Изучаю. Еще есть идеи?


Kerk   (2005-10-15 20:08:00) [35]

http://kladovka.net.ru/index.cgi?pid=article&rid=1


Tristania   (2005-10-15 19:57:00) [36]

Хех, ну АПИ, так АПИ.
В дополнение хочу сказать вот что: как работать с винтом из-под:
- обычных приложений;
- консольных и приложений ДОС (если это возможно);
- и чем мне может помочь написание драйвера нулевого кольца.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо