Проблема: подключение дисковода в ring0

Тема в разделе "WASM.WIN32", создана пользователем AB_Celitel, 18 сен 2005.

  1. AB_Celitel

    AB_Celitel New Member

    Публикаций:
    0
    Регистрация:
    9 июл 2005
    Сообщения:
    72
    Адрес:
    Россия, г.Иваново
    Приветствую всех!

    Подключаю дисковод с помощью ZwCreateFile в ring0

    если в данный момент дискета в нём была, то винда читает дискеты нормалбно, а если в данный момент дисковод был пустой, то пока не закрою handle дисковода винда пишет,

    что дискета отсутствует даже если её вставить.

    ZwCreateFile с такими параметрами :

    invoke ZwCreateFile,addr hDevice_discA,FILE_READ_DATA + FILE_WRITE_DATA + SYNCHRONIZE,addr oa,addr iosb_discA,0,0,FILE_SHARE_READ+FILE_SHARE_WRITE+FILE_SHARE_DELETE,FILE _OPEN,FILE_SYNCHRONOUS_IO_NONALERT,0,0

    Может не хватает еще какого-либо флажка для прав доступа?

    Если кто знает, пжл. подскажите

    Заранее спасибо
     
  2. yureckor

    yureckor New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2004
    Сообщения:
    494
    Адрес:
    Russia
    незнаю как в этом случае, но если не хочешь чтоб сообщение появлялось, то
    Код (Text):
    1.  
    2. inva_win SetErrorMode, SEM_FAILCRITICALERRORS
    3. push eax
    4.        
    5. invoke CreateFile,bf_file,\
    6.             GENERIC_READ,FILE_SHARE_READ,\
    7.             NULL,OPEN_EXISTING,FILE_ATTRIBUTE_ARCHIVE,NULL
    8. pop ecx
    9. push eax
    10. invoke SetErrorMode, ecx
    11. pop eax
    12.        
    13. CP eax,INVALID_HANDLE_VALUE,z,@@3
    14. mov [hFileRead],eax
    15. ...
    16.