Страница 1 из 1

Чтение секторов HDD!

Добавлено: 15 мар 2005, 15:48
Dilshod
Как считывать сектора LbaHDD, под Windows или под DOS!
заранее спасибо.

Добавлено: 15 мар 2005, 18:52
Andy
Поищи документацию тут - http://igoryksoft.narod.ru/docs/asm.htm

Добавлено: 16 мар 2005, 07:23
Dilshod
Нашол только Низкоуровневое управление HDD, а мне бы узнать функцию чтения сектора,
видал еше как не delphi для этого использовали int25 как то, никто не знает как ее использовать?

Добавлено: 16 мар 2005, 07:43
Dilshod
никто не знает значение этих констант
VWIN32_DIOC_DOS_INT25 и VWIN32_DIOC_DOS_DRIVEINFO
использеумых в DeviceIoControl

Добавлено: 16 мар 2005, 12:21
Dilshod
Все, нашел, все Ok,

Код: Выделить всё

	mov	[diStartSector],1 ;Нач сектор
.Next:
	invoke	CreateFile,FileName,GENERIC_READ,0,0,0,\
                    FILE_FLAG_DELETE_ON_CLOSE,0
	mov	[hDevice],eax
	mov	[diSectors],128     ;число секторов
	mov	[diBuffer],Bts_       ;буффер
	mov	[REAX],7305h
	mov	[REBX],d_str
	mov	[RECX],-1
	mov	[REDX],6          ;диск
	mov	[Flags],1
	invoke	DeviceIoControl,[hDevice],VWIN32_DIOC_DOS_DRIVEINFO,\
                      Regs,7*4,Regs,7*4,nb,0
	invoke	CloseHandle,[hDevice]