DRIVER <> GUI APP

Discussion in 'WASM.NT.KERNEL' started by d2k9, Dec 13, 2011.

  1. d2k9

    d2k9 Алексей

    Blog Posts:
    0
    Joined:
    Sep 14, 2008
    Messages:
    325
    Посоветуйте как реализовать наипростейшее общение драйвера с юзермодным приложением не прибегая к вызову DeviceIoControl(). К примеру надо чтобы при вызове функции в драйвере передавался запрос приложению которое отправляет в ответ строку и только тогда функция в драйвере продолжает своё выполнение.
     
  2. XshStasX

    XshStasX New Member

    Blog Posts:
    0
    Joined:
    Aug 9, 2008
    Messages:
    991
    1. LPC
    2. Создаем в драйвере список вида ProcessId - HandleEvent(или EventName) - AddressUserModeCommand. Создаем в системе отдельный поток который будет весить на евентах и по срабатыванию одного из евента делать конект к нужному ProcessId после читать нужную команду по адресу AddressUserModeCommand.
    3.
    Code (Text):
    1. К примеру надо чтобы при вызове функции в драйвере передавался запрос приложению которое отправляет в ответ строку и только тогда функция в драйвере продолжает своё выполнение.
    Ставишь апс одному из потоков приложения, сам драйвер должен ожидать срабатывания евента ( handle евента можно передать в приложение через параметры АПС ) после того как евент будет установлен он может прочитать результат продолжить работу(подобно как в п.2)
     
  3. d2k9

    d2k9 Алексей

    Blog Posts:
    0
    Joined:
    Sep 14, 2008
    Messages:
    325
    подумываю о ReadFileEx() / WriteFileEx() и IRP_MJ_READ / IRP_MJ_WRITE
     
  4. x64

    x64 New Member

    Blog Posts:
    0
    Joined:
    Jul 29, 2008
    Messages:
    1,370
    Location:
    Россия
    Тоже неплохой вариант.
    Один из лучших, я бы сказал.
    Ну и традиционно предлагаю APC ещё.
     
  5. d2k9

    d2k9 Алексей

    Blog Posts:
    0
    Joined:
    Sep 14, 2008
    Messages:
    325
    я сторонник нетрадиционных методов xD