Гость
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Удалённый ответ. Remoting / 7 сообщений из 7, страница 1 из 1
05.07.2007, 21:12
    #34642440
goodbit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалённый ответ. Remoting
Есть след. код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
try
{
   IRemoteClass rem = (IRemoteClass)Activator.GetObject(
      typeof(IRemoteClass), "tcp://" + adress + "/Hi");
   if (rem != null) // Вот сдесь вопрос
   {
      this.threadingSending(rem);                                
   }
}
catch (System.Net.Sockets.SocketException ex)
{
   MessageBox.Show(ex.Message);                            
}
catch (System.Runtime.Remoting.RemotingException ex)
{
  MessageBox.Show(ex.Message);
}
//.....
private void threadingSending(IRemoteClass rem)
{
 Thread thread = new Thread(new ParameterizedThreadStart(rem.SecondaryUserCall));
 thread.Start((object)Function.Property.FullAdress);            
}


Теперь вопрос: если на удалённой машине открыта программа, т.е. прослушивается соотв. порт, то вроде как эта конструкция работает. Но если нет, то возникает глобальное исключкение SocketException, которое не уловить(как я понимаю из-за того, что выполнение метода я вывел в отдельный поток). Так, почему же всё равно регистрируется объект,т.е. почему объект rem не равен null??? Или как понять, что с таким объектом мы не сможем работать?

PS В поток пришлось вывести потому, что на клиенте должно появлятся тоже окошко статуса запроса на удалённую машину.
...
Рейтинг: 0 / 0
06.07.2007, 14:32
    #34644005
goodbit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалённый ответ. Remoting
Короче, подскажите как на начальном уровне понять, что с удалённым объектом нельзя работать...
...
Рейтинг: 0 / 0
06.07.2007, 14:40
    #34644034
Sergey Tokarev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалённый ответ. Remoting
А через Application.ThreadException возникающее исключение нельзя отловить?
...
Рейтинг: 0 / 0
06.07.2007, 14:45
    #34644054
goodbit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалённый ответ. Remoting
Спасибо, не пробовал.... щас посмотрю...
...
Рейтинг: 0 / 0
06.07.2007, 16:06
    #34644377
goodbit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалённый ответ. Remoting
Спасибо за совет, но к сожалению это не помогло.

Если я уберу поток, то исключение SocketExseption зарегистрируется правильно и я нормально продолжу работу, но это не даст мне выполнение определённых действий на клиенте.. так как сам клинт будет ждать ответа с диалогового окна сервера...

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

В принципе задачу вроде как решил, но всё равно интерестно - кроме как эксепшеном можно ли выявить, что с данным объектом мы работать не сможем, в связи отсутствием такового...(по моей логике должен возвращаться null, но таковое не происходит)
...
Рейтинг: 0 / 0
06.07.2007, 16:44
    #34644536
Activator
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалённый ответ. Remoting
goodbitActivator.GetObject() - это серверная активация объекта, при этом всегда возвращается прокси, но реальное создание объекта происходит при первом вызове методов через прокси. Так что если GetObject() не выбросил исключения, то это не значит, что объект реально можно создать .
...
Рейтинг: 0 / 0
06.07.2007, 19:43
    #34644983
goodbit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Удалённый ответ. Remoting
Activator goodbitActivator.GetObject() - это серверная активация объекта, при этом всегда возвращается прокси, но реальное создание объекта происходит при первом вызове методов через прокси. Так что если GetObject() не выбросил исключения, то это не значит, что объект реально можно создать .

ок, спасиб... обидно, что нельзя сразу понять есть ли реальный объект или нет(((
...
Рейтинг: 0 / 0
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Удалённый ответ. Remoting / 7 сообщений из 7, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]