DRIVER <> GUI APP

Тема в разделе "WASM.NT.KERNEL", создана пользователем d2k9, 13 дек 2011.

  1. d2k9

    d2k9 Алексей

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

    XshStasX New Member

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

    d2k9 Алексей

    Публикаций:
    0
    Регистрация:
    14 сен 2008
    Сообщения:
    325
    подумываю о ReadFileEx() / WriteFileEx() и IRP_MJ_READ / IRP_MJ_WRITE
     
  4. x64

    x64 New Member

    Публикаций:
    0
    Регистрация:
    29 июл 2008
    Сообщения:
    1.370
    Адрес:
    Россия
    Тоже неплохой вариант.
    Один из лучших, я бы сказал.
    Ну и традиционно предлагаю APC ещё.
     
  5. d2k9

    d2k9 Алексей

    Публикаций:
    0
    Регистрация:
    14 сен 2008
    Сообщения:
    325
    я сторонник нетрадиционных методов xD