Re: Общение serial port драйвера c user-mode.
От: FiW  
Дата: 19.06.05 17:24
Оценка:
Здравствуйте, Andrew S, Вы писали:

Хотелось бы узнать чем все это закончилось?

AS>Привет всем. Жизнь заставляет писАть драйвер ком-порта, при этом возникает необходимость общения с user-mode приложением (для управления поведением драйвера, вызовом некоторых функций и т.п.).

AS>Очевидно, для общения с драйвером посредством отложенного DeviceIoControl необходимо получить хандл драйвера. Также очевидно, что напрямую сделать ЭТО в случае с ком портом не представляется возможным, т.к. такой хандл должно мочь создать приложение пользователя. Очевидно, есть 2 решения.
AS>1. Писать filter драйвер. Ну, или совмещать его функциональность в основном.
AS>2. Использовать неизвестные мне недокументированные возможности и создавать таки хандл (точнее, его копию) из юзер моде.
AS>Интересует следующее.
AS>а) Возможно ли совместить функционал 2-х типов драйверов в одном, т.е. сначала сделать IoCreateDevice и IoAttachDeviceToDeviceStack для собственно драйвера последовательного порта, а потом сделать в нем же так называемый вторичный девайс, спеиально для общения с нашим управляющим user-mode приложением, и потом тоже его IoAttachDeviceToDeviceStack. Соотв., управляющее юзер-моде приложение будет создавать объект вторичного девайса, а приложение пользователя — первичного. (?) какие параметры передавать IoCreateDevice в этом случае для успешной работы вторичного девайса. Очевидно, в этом случае на функциях IOCTLххх и IRP_ххх прижется разбирать, какой именно драйвер вызывается.
AS>б) Другие варианты.

AS>Возможно, я что то недопонимаю, т.к. опыта написания таких драйверов немного.

AS>Всем спасибо за советы.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.