Служба WCF net pipe работает в разных пользовательских сеансах с одним и тем же именем конечной точки
Исходя из всего, что я читал о службах WCF с использованием сетевых каналов, я ожидал, что смогу использовать адрес net.pipe://localhost/service/ в различных пользовательских сеансах, поскольку WCF использует не имя, а GUID.
Во всяком случае, когда я запускаю несколько служб, я получаю AddressAlreadyInUseException
с сообщением:
Cannot listen on pipe name 'net.pipe://localhost/service/' because another pipe endpoint is already listening on that name.
Есть ли способ ограничить область действия каждой службы WCF сеансом пользователя? Соединения будут происходить всегда из одного сеанса пользователя.
1 ответ
Мы обнаружили, что пользователи с правами администратора могут видеть именованные каналы между сеансами, а обычные пользователи их не видят. В итоге мы запустили приложение без прав администратора и все.
Что я не знаю, если это поведение что-то, что может быть изменено или это исправлено в Windows.