Проблема с подключением WCF в windows xp

У нас есть служба WCF, размещенная как служба Windows в System1 [используется привязка NETTCP]

И у нас есть клиент в system2 с Windows XP. Работает нормально.

Проблема: мы обновили system1 до Windows Server 2016 и службу wcf, работающую как службу Windows. Но из Windows XP клиент не мог даже подключиться к службе WCF. Только на машине XP возникает проблема:

"system.servicemodel.channels.servicechannel не может использоваться для связи, потому что он находится в неисправном состоянии"

Любая конфигурация работает в Windows XP для поддержки WCF в Windows Server 2016 ??

Добрый совет


person KC Balaji    schedule 13.06.2017    source источник
comment
Нет журналов ошибок? Тогда как узнать, что что-то не работает? Вы настроили трассировку и на клиенте, и на сервере: stackoverflow.com/a/4271597/578411? если да, то что вы там видите? Клиент аутентифицируется с сервером? Использует ли привязка nettcp какие-либо настройки безопасности? Регистрируются ли ошибки в журнале событий (приложения или системы) на сервере?   -  person rene    schedule 13.06.2017
comment
Если возникает какое-либо исключение, мы регистрируем его в журналах системных событий. Обычно мы проверяем это, но в этом случае я не смог найти там никаких журналов. Режим безопасности привязки net tcp в качестве транспорта. netTcpBinding.Security.Mode = SecurityMode.Transport; netTcpBinding.Security.Transport.ClientCredentialType = TcpClientCredentialType.Windows; netTcpBinding.Security.Transport.ProtectionLevel = ProtectionLevel.EncryptAndSign;   -  person KC Balaji    schedule 13.06.2017
comment
Поскольку Windows XP довольно старая и больше не исправляется, возможно, канал SSL / TLS не хочет согласовывать совместимый протокол. см. msdn.microsoft.com/ nl-nl / library / windows / desktop /, но это должно завершиться ошибкой, по крайней мере, с правильным исключением на стороне клиента. И в зависимости от того, как клиент и сервер должны проходить аутентификацию, но я предполагаю, что Windows XP не сможет войти в систему на сервере Win2016 из коробки, но я не знаю, что может отсутствовать или какую групповую политику включить.   -  person rene    schedule 13.06.2017
comment
На машине Xp со стороны клиента возникает проблема с подключением WCF: system.servicemodel.channels.servicechannel не может использоваться для связи, потому что он находится в неисправном состоянии   -  person KC Balaji    schedule 14.06.2017


Ответы (1)


Нашел это на форуме msdn (он немного старше):

Теперь мы нашли проблему. Приложение запускает некоторые службы, которые требуются WCF, проблема в том, что эти службы не существуют в WindowsXP (WAS, прослушиватель NETTCP и т. Д.). Когда приложение не может найти или запустить службу, оно закроется. Очевидно, наличие этих служб на клиентском компьютере не является обязательным, если на нем не запущена служба (в IIS).

Таким образом, при удалении проверки службы у клиента все работает нормально.

- источник

person Dennis Larisch    schedule 13.06.2017