Форум: "WinAPI";
Текущий архив: 2006.03.26;
Скачать: [xml.tar.bz2];
ВнизКак прочитать/записать MBR из под Win9x Найти похожие ветки
← →
Arazel © (2006-01-05 14:27) [0]Нужно что-то вроде
ReadSector(PlysicalHDD, Sector,NumSector,Buf);
WriteSector(PlysicalHDD, Sector,NumSector,Buf);
НО! Что бы работало с самого начало HDD то есть с нулевого
сектора (MBR)
У кого что есть помогите?
← →
Игорь Шевченко © (2006-01-05 14:28) [1]Нафига ?
← →
Arazel © (2006-01-05 17:39) [2]Игорь Шевченко © (05.01.06 14:28) [1]
Да вобщем создал себе модуль ATA.pas
в нем все низко уровные ф-ций...
Sleep
ReadSector
WriteSector
ReadID
...
Но все это работает под драйверами... Smallport.sys/vxd
думаю ты понял что все обращение к жесткому диску
пройсходит именно на уровне портов IN/OUT
Конечно это боле универсальный вариянт!!!
Но я хочу создать второй вариянт лишних файлов
то есть не хочу таскать собой драйвера!!! И решил создать...
Под WinNT платформы удолось легко а вот под Win9x не когда
не приходилось... Ну BootSector я смог прочитать но мне
надо именно с первого раздела! Так как мой ф-ций
особенно та которая определяет начальные сектора SMBR
каждого логического диска как раз таки и начинает с MBR
КАК ЖЕ Я ЕЩЁ СМОГУ ПОДЧИТАТЬ ВСЕ РАЗДЕЛЫ!!!
Ты можешь предложить читать с BootSector? Но нет!
Это не для меня!!! Ведь модуль унивесальный!!!
А ТАК ЖЕ ЕСТЬ И FAT (для работы с ф.с. FAT12/16/32/64 )
и ISO/UDF и собираюсь делать под NTFS и Linux
Если есть инфа про NTFS плизз помогите...
ЕСЛИ КТО МОЖЕТ ПОМОГИТЕ...
← →
Kerk © (2006-01-07 18:13) [3]тут есть
http://kladovka.net.ru/index.cgi?pid=list&rid=9
← →
Arazel © (2006-01-08 15:38) [4]Kerk © (07.01.06 18:13) [3] Не Kerk RawIO32.bin в мой планы
не входят... :(((((((((((
Может исходник даш?
← →
Kerk © (2006-01-09 13:22) [5]Arazel © (08.01.06 15:38) [4]
Совсем без дополнительных файлов ты сделать не сможешь. Тут два варианта - thunk (как в MIXEd) или писать VXD-драйвер.
Вариант MIXEd-а содержит 2 дополнительные DLL. Одна 16bit - которая непосредственно и выполняет низкоуровневую работу и вторая 32bit нужна для thunk"а (промежуточное звено между моей программой и 16bit DLL). От промеждуточного звена можно избавиться (тем самым оставив только одну "лишнюю" DLL), воспользовавшись недокументированными LoadLibrary16(), GetProcAddress16() и другими. Описание поищи в сети.
Тут смотри исходники библиотек rawio??, QTThunkU.pas (объявление LoadLibrary16(), GetProcAddress16()...) и еще чего-нибудь полезного:
http://kerkzone.net/files/ex2fs_src.zip (180kb)
← →
Arazel © (2006-01-09 17:21) [6]Kerk © (09.01.06 13:22) [5]
Спсибо тебе огромное за модуль!!! Я думаю теперь
скоро создам ещё один модуль для Linux!
Мое решение после твоих слов остается преждним
а именно: Я буду использовать в NT драйвер
GiveIO.pas (Сеййчас в кладовку скину :) )
а для Win9x буду использовать свой все ф-ций
из нулевого кольца (Есть модуль именно для Win9x)
также я хотел сделать для NT подключив твой модуль
который находится на сайте :) Но к сожилению этот
модуль не работает в WinXP с Сервис паком(SP) 2
приходится использовать драйвер...
хотел PlysicalDrive но у него ограничение в секторах
он расчитан только для малых дисков!
Кстати не мог бы дать исходник Плугина FAT32 из Mixed?
хотелось бы сравнить со своей и боле оптемезировать :)
И ещё исходник Mixed который лежит в кладовке он
не компелируется :( Ругается на кое какие ф-ций
которые не инитцалезированы...
← →
Kerk © (2006-01-09 17:54) [7]Arazel © (09.01.06 17:21) [6]
хотел PlysicalDrive но у него ограничение в секторах
он расчитан только для малых дисков!
Это как это? Ты, мягко говоря, не прав.
> Кстати не мог бы дать исходник Плугина FAT32 из Mixed?
Этот плагин не я писал.. пороюсь.. если найду исходник, выложу.
>И ещё исходник Mixed который лежит в кладовке он
>не компелируется :( Ругается на кое какие ф-ций
> которые не инитцалезированы...
А подробнее? Какие именно функции?
P.S.
# Запрещено наличие внутри архивов исполняемых файлов (exe, dll, ...)
# Разрешено публиковать только zip-архивы
Из правил Кладовки. Ну, народ, ну они же такие простые... ну соблюдайте.
← →
Arazel © (2006-01-09 18:58) [8]Kerk © (09.01.06 17:54) [7]
Это как это? Ты, мягко говоря, не прав.
Ну не знаю Kerk тут у нас поселились Microsoft(ы)
вот они и гворят...
Хотя я тоже пробывал вроде все читает 8|
может 160gb не тянет... Да ладно я все равно
на аппаратном урове обращаюсь :)
Mixedprocedure TMXfrm.LocalizeInterface;
var
I: Integer;
begin
ParseLocales(ChangeFileExt(Application.ExeName,".lng"),MainLocale,Sets.LocaleName);
for I := 0 to ActionList.ActionCount-1 do
begin
(ActionList.Actions[I] as TAction).Caption :=
MainLocale.Values[(ActionList.Actions[I] as TAction).Caption];
(ActionList.Actions[I] as TAction).Hint :=
MainLocale.Values[(ActionList.Actions[I] as TAction).Hint];
end;
end;
Начиная отэтой ф-ций и деревом... Пробывал самостоятельнно
исправлять но запарился... Не люблю в чужом коде ковырятся
ради только что бы кое что вытащить :)
← →
Kerk © (2006-01-09 23:08) [9]Arazel © (09.01.06 18:58) [8]
Ну не знаю Kerk тут у нас поселились Microsoft(ы)
вот они и гворят...
Ничего они такого не говорят.
> Начиная отэтой ф-ций и деревом...
Сообщение об ошибке, как я понял, зашифровано и ты мне его не скажешь. :)
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2006.03.26;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.039 c