Девайс не открывается

Discussion in 'WASM.NT.KERNEL' started by somebodynew, Jun 17, 2018.

  1. somebodynew

    somebodynew New Member

    Blog Posts:
    0
    Joined:
    May 18, 2018
    Messages:
    8
    Вообщем то создаю девайс как все (ну или почти, мап с тдл)
    Code (Text):
    1.     status = IoCreateDevice(DriverObject, 0, &deviceName, FILE_DEVICE_XXX, FILE_DEVICE_SECURE_OPEN, FALSE, &pDeviceObject);
    2.     if (!NT_SUCCESS(status))
    3.         KeBugCheckEx(1337, status, 0, 0, 0);
    4.  
    5.     status = IoCreateSymbolicLink(&symLink, &deviceName);
    6.     if (!NT_SUCCESS(status))
    7.         KeBugCheckEx(1338, status, 0, 0, 0);
    багчека разумеется нет, остальной код в ините выполняется корректно, девайс появляется в дереве /Device, однако CreateFile упорно возвращает 2 (не найден). Это точно не ЮМ хуки, потому что прямой сискол дает аналогичный результат.
    С PCHunter-ом выгрузил все левые драйвера (которые не от M$) у которых есть коллбэк на IRP_MJ_CREATE, не помогло. Данная проблема лечится перезагрузкой, правда не всегда одной (лол).
    Проявляется как на win7 так и на win10.
    Собственно, как такое вообще может быть ? Уже всю голову сломал.
     
  2. drem1lin

    drem1lin Member

    Blog Posts:
    0
    Joined:
    Mar 17, 2009
    Messages:
    300
    У меня была подобная проблема, но в моем случае, я ошибся в функции обработчике IRP и заворачивал все пакеты. Т.е. я фэйлил все неподдерживаемые IRP_MJ_ и получил именно такой результат, как вы описываете. Но что бы иногда открывалось, а иногда нет, это что-то новое.