[.NET] Remoting

agaaaa

Суть проблемы такова:
Существует некий класс - наследник MarshalByRefObject. Нужно построить на его основе Windows-сервис так, чтобы его методы, св-ва и т. д. были доступны через Remoting. Как создать экземпляр этого класса и затем расшарить его например по адресу tcp://имяхоста:666. Во всех найденных мною примерах управлять поведением объекта из самого сервиса было невозможно (создание экземпляра инициировалось удалённой машиной).
Ещё одна проблема - как рашарить сразу несколько обектов (разных ли классов или нет - неважно)? Один по tcp://имяхоста:порт1, другой по tcp://имяхоста:порт2

6yrop

ты MSDN пробовал читать?

agaaaa

Умный - дай ссылку в мсдн

aleks058

Насколько помню, на сервере тебе нужна функция RemotingServices.Marshal(MarshalByRefObject, String). В параметрах ей даешь тот объект, который ты сконструировал. Только сначала не забудь про каналы.
Клиент может работать через конфиг-файл (тогда надо вызвать RemotingConfiguration.Configure) или явно, через Activator.
Я предпочитаю Активатор, потому что в случае конфига надо на клиенте иметь класс, "выглядящий" так же, как класс на сервере. А с активатором достаточно сборки с интерфейсом.
Оставить комментарий
Имя или ник:
Комментарий: