Как работать с имеющимся Mirror Driver
От: vdimas Россия  
Дата: 23.11.07 23:32
Оценка:
Копаясь в NetMeeting я обнаружил, что начиная с WinXP в системе всегда стоит mirror driver: mnmdd.dll, mnmdd.sys, и работает соотв. служба "mnmdd". Собсно, этот mirror driver и используется нетмитингом, мс-мессенджером и другими конференционными тулзами от MS.

Как с ним работать? Как с обычным Mirror Driver из SDK?
Кто-нибудь пробовал его юзать?
Re: Как работать с имеющимся Mirror Driver
От: Andrew S Россия http://alchemy-lab.com
Дата: 26.11.07 22:12
Оценка: 1 (1)
V>Копаясь в NetMeeting я обнаружил, что начиная с WinXP в системе всегда стоит mirror driver: mnmdd.dll, mnmdd.sys, и работает соотв. служба "mnmdd". Собсно, этот mirror driver и используется нетмитингом, мс-мессенджером и другими конференционными тулзами от MS.

V>Как с ним работать? Как с обычным Mirror Driver из SDK?

V>Кто-нибудь пробовал его юзать?

Например, при помощи Netmeeting API. Вдаваться в детали реализации (тем более, что она изменяется, судя по всему, от версии к версии) и завязываться на них я бы не советовал.
http://www.rusyaz.ru/pr — стараемся писАть по-русски
Re[2]: Как работать с имеющимся Mirror Driver
От: vdimas Россия  
Дата: 27.11.07 08:53
Оценка:
Здравствуйте, Andrew S, Вы писали:

V>>Как с ним работать? Как с обычным Mirror Driver из SDK?

V>>Кто-нибудь пробовал его юзать?

AS>Например, при помощи Netmeeting API.


Это API не открывает доступа к драйверу, оно даже не открывает доступа к API AppShare плагина.

AS>Вдаваться в детали реализации (тем более, что она изменяется, судя по всему, от версии к версии) и завязываться на них я бы не советовал.


понятно.
Re[3]: Как работать с имеющимся Mirror Driver
От: Andrew S Россия http://alchemy-lab.com
Дата: 27.11.07 09:07
Оценка:
V>>>Как с ним работать? Как с обычным Mirror Driver из SDK?
V>>>Кто-нибудь пробовал его юзать?

AS>>Например, при помощи Netmeeting API.


V>Это API не открывает доступа к драйверу, оно даже не открывает доступа к API AppShare плагина.


И не должно. Драйвер никоим образом не является публичным интерфейсом. Да, вы можете попробовать его реверсировать и использовать в своих целях (хотя это и будет сложно по некоторым _нетехническим_ причинам, например, по лицензионным). Но смысла в этом я не нахожу — если только писать под определенную версию системы, сервис пака и т.п. А на 9х вообще пользуется не драйвер, а DDI hook. В этом и смысл upper интерфейса — абстрагироваться от деталей. Хотя, конечно, в случае нетмитинга там все несколько... неудобно, что ли. Уж слишком оно все именно на конференции заточено. Поэтому если нужен драйвер — возьмите доступный, от tight или ultra vnc. Там свои особенности (не всегда корректно отрабатывает переключение сессий, разрешения и т.п.), но тем не менее, все уже готово — и минимальная обвязка, доступная в исходниках, и сам драйвер с инсталлером.
http://www.rusyaz.ru/pr — стараемся писАть по-русски
Re[4]: Как работать с имеющимся Mirror Driver
От: vdimas Россия  
Дата: 28.11.07 08:49
Оценка:
Здравствуйте, Andrew S, Вы писали:


Ну, 9x нам не нужен, под NT2000 есть инсталляхи этого драйвера прямо от MS, но не суть. Странная ситуация с этими виртуальными девайсами как таковая. Получается, что начиная с версии WinXP в системе стоит сразу 2 mirror-driver, один для RDP и другой для месенджеров (MS Messanger, Office LiveMeeting, MS NetMeeting, etc). Функциональность у них весьма близкая, и нахрена тогда держать дублирующуя ф-сть и лишние, постоянно работающие службы?
Re[5]: Как работать с имеющимся Mirror Driver
От: Andrew S Россия http://alchemy-lab.com
Дата: 28.11.07 10:23
Оценка:
V>Ну, 9x нам не нужен, под NT2000 есть инсталляхи этого драйвера прямо от MS, но не суть. Странная ситуация с этими виртуальными девайсами как таковая. Получается, что начиная с версии WinXP в системе стоит сразу 2 mirror-driver, один для RDP и другой для месенджеров (MS Messanger, Office LiveMeeting, MS NetMeeting, etc). Функциональность у них весьма близкая, и нахрена тогда держать дублирующуя ф-сть и лишние, постоянно работающие службы?

Ну я бы не сказал, что близкая. Все-таки нетмитинг не использует для себя отдельную терминальную сессию, да и RDP несколько посложнее нетмитинга (по-крайней мере, я сделал для себя такой вывод, когда разбирался в этом). Кстати, по поводу отдельной терминальной сессии — на самом деле несколько непонятно, я в свое время пробовал воспроизвести функциональность rdp в миррор драйвере, однако получалось аттачится только к консольной сессии. А вот RDP работает в отдельной сессии вполне успешно.
http://www.rusyaz.ru/pr — стараемся писАть по-русски
Re[6]: Как работать с имеющимся Mirror Driver
От: vdimas Россия  
Дата: 29.11.07 07:54
Оценка:
Здравствуйте, Andrew S, Вы писали:

AS>Ну я бы не сказал, что близкая. Все-таки нетмитинг не использует для себя отдельную терминальную сессию, да и RDP несколько посложнее нетмитинга (по-крайней мере, я сделал для себя такой вывод, когда разбирался в этом).


На самом деле он немного проще .
Проще в том смысле, что не отслеживает отдельные окошки, вместо этого отслеживает десктоп целиком, т.е. мне, как программисту видится примерно вдвое проще код отслеживания изменений экрана. Опять же, протокол RDP и функциональность виртуального дисплейного девайса — это как бы разные вещи (хотя никто не мешает их сбилдить в один бинарный образ, не суть).

AS>Кстати, по поводу отдельной терминальной сессии — на самом деле несколько непонятно, я в свое время пробовал воспроизвести функциональность rdp в миррор драйвере, однако получалось аттачится только к консольной сессии. А вот RDP работает в отдельной сессии вполне успешно.


Да, проблема известная. Но у меня подозрения на некие недокументированные API виндов всвязи с этим. Ведь CITRIX подписал DNA и получил исходники винды в свое время для разработки терминала под винду.

Собственно, меня раздражает больше сама мышиная возня вокруг этого как таковая. Чи ни Большой Технический Секрет, в плане достоверного получения изменений экрана. Практически все остальные графические ОС (или оболочки) имеют встроенные ср-ва для этого, или же дают легкую аналогичную возможность, в отличие от виндов.
Re[7]: Как работать с имеющимся Mirror Driver
От: Andrew S Россия http://alchemy-lab.com
Дата: 29.11.07 10:28
Оценка:
AS>>Ну я бы не сказал, что близкая. Все-таки нетмитинг не использует для себя отдельную терминальную сессию, да и RDP несколько посложнее нетмитинга (по-крайней мере, я сделал для себя такой вывод, когда разбирался в этом).

V>На самом деле он немного проще .


Вы ошибаетесь.

V>Проще в том смысле, что не отслеживает отдельные окошки, вместо этого отслеживает десктоп целиком, т.е. мне, как программисту видится примерно вдвое проще код отслеживания изменений экрана.


Это мелочи, которые реализуются очень просто.

V>Опять же, протокол RDP и функциональность виртуального дисплейного девайса — это как бы разные вещи (хотя никто не мешает их сбилдить в один бинарный образ, не суть).


Ну-ну. А об организации взаимодействия вы подумали? С учетом, что в RDP это все практически полностью (включая транспорт и кодирование) живет в кернеле... Да что говорить — просто сравните размеры драйверов. Косвенный, конечно, но показатель. В общем, RDP _значительно_ сложнее нетмитинга и функциональность у них прилично различается. Точка.

V>Собственно, меня раздражает больше сама мышиная возня вокруг этого как таковая. Чи ни Большой Технический Секрет, в плане достоверного получения изменений экрана. Практически все остальные графические ОС (или оболочки) имеют встроенные ср-ва для этого, или же дают легкую аналогичную возможность, в отличие от виндов.


Ничего. Зато повышается порог входа А то понаписали сначала всяких VNC на хуках...
http://www.rusyaz.ru/pr — стараемся писАть по-русски
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.