2011-02-10 3 views
0

У меня есть веб-сайт и служба Windows, которые общаются через один объект сервера вызовов. Моя настройка удаленного доступа обрабатывается через файлы конфигурации.Что делать, когда RemotingConfiguration.Configure не удается?

Обычно, если я создавал экземпляр объекта с помощью new(), я возвращаю «TransparentProxy» обратно. Тогда, когда я вызвал метод, если служба Windows работает, это сработает, и если бы это было не так, я бы получил исключение RemotingException.

Сегодня я вижу в нашей производственной среде, что при вызове new() создается локальный объект. Что-то случилось, так это то, что «RemotingConfiguration.Configure», которое я вызываю в событии «Запуск приложения» веб-сайта в файле Global.asax. Исключением было:

«System.Reflection.TargetInvocationException», в котором было внутреннее исключение «RemotingException:» Не удалось создать порт IPC: «Доступ запрещен». Метод, который запустил ошибку, был «IpcServerChannel.StartListening».

Я никогда не видел эту ошибку во время разработки, и приложение работает около месяца в производстве. Почему эта ошибка возникает? Я уверен, что настоящая причина - это не проблема доступа.

Спасибо,

Крис Маккиннон

ответ

0

Любые изменения в версии .Net, либо установлен или установлен в свойствах веб-сайта? Любые изменения в файлах конфигурации? Даже маленькие? This link показывает эффекты небольших ошибок.

Другой сценарий, который нужно изучить, - это когда служба отключена и снова запускается, пока клиент по-прежнему активен. Служба пытается перерегистрировать IpcServerChannel с использованием того же имени порта и имени как в предыдущее время. See this link для деталей.

Смежные вопросы