Подскажите, плз, что я делаю неправильно. Необходимо получить хендл диска пож Win9x/NT для последующего прямого доступа (прочитать сектор, записать сектор). Я хочу реализовать это ReadFile/WriteFile. INT25h/26h под 2k/XP не работает (может, подскажите другие способы?)
Я делал это так:
drv_open proc near
xor ebx,ebx
push ebx
push FILE_ATTRIBUTE_NORMAL
push OPEN_EXISTING
push FILE_SHARE_READ or FILE_SHARE_WRITE
push ebx
push GENERIC_READ or GENERIC_WRITE
push offset drv_path
call CreateFileA
mov drv_handle,eax
call GetLastError
cmp eax,0
jne drv_readfail
ret
drv_readfail: mov esi, offset msg_read_error
call error
drv_open endp
кстати, drv_handle db "\\.\A:",0h.
если смотреть под SoftICE после GetLastError eax=2h (если память не изменяет, FILE_NOT_FOUND). Помогите, либо поправьте меня, либо предложите свой способ решения траблы.