Связь между службой Windows и приложениями в разных пользовательских сеансах - PullRequest
2 голосов
/ 19 февраля 2009

У меня следующая ситуация:

Среда Windows Server с несколькими пользовательскими сеансами.

Служба Windows прослушивает известный порт.

Приложение на панели задач в каждом сеансе пользователя, которое запускается автоматически.

Приложение Silverlight (SL) работает в браузере и обменивается данными со службой Windows через сокеты и предварительно определенный порт.

Моя цель заключается в следующем: пользователь взаимодействует с приложением SL, приложение SL взаимодействует со службой Windows с помощью сокетов, а затем служба Windows должна связываться с соответствующим приложением в трее, которое находится в том же сеансе пользователя, что и браузер, который инициирует вызов.

Связь между службой Windows и приложениями в трее планируется осуществлять с использованием именованных каналов.

Вопрос: как определить / передать имена именованных каналов в службу Windows, чтобы установить правильное соединение (служба Windows -> приложение трей в правильном сеансе пользователя)?

1 Ответ

1 голос
/ 17 октября 2010

Не могу найти точное решение для описанной проблемы. Но можно использовать концепцию пользовательского протокола.

Приложение SL генерирует пользовательские ссылки протокола, и зарегистрированное приложение обрабатывает такие ссылки в сеансе пользователя. После этого такое приложение может установить двустороннюю связь со службой Windows, которая прослушивает известный порт.

...