Я пытаюсь понять .Net удаленное взаимодействие с событиями и обратными вызовами.Когда я читал учебники в Интернете, я обнаружил статью:
codeproject: .NET Remoting Events объяснены
, где этот механизм объясняется на примере.Я играл с проектом, который я скачал на той же самой веб-странице.
Единственное, что я изменил в коде, это «RemotingEvents.Client.Form1.serverURI», который я заново набрал на localhost («tcp: // localhost: 15000 / serverExample.Rem»).Я скомпилировал проект в Visual Studio 2010 под .Net 4.0 и протестировал скомпилированные сборки на 64-битном ПК с Win7, и тут я столкнулся с проблемой.
Я запустил сервер и запустил его.После этого я подключил один клиент к нему, все прошло нормально, потому что пока не было выполнено никакого обратного вызова.Проблема появилась, когда я пытался отправить сообщение с моего клиента на сервер.Сообщение прошло на сервер и появилось в текстовом поле, как и предполагалось.Сразу после этого сервер пытался отозвать подключенного клиента, но не смог дозвониться и выдал исключение, которое вернулось клиенту, который отправлял сообщение в первую очередь.
По истечении времени, потраченного на попытку запуска приложения, чтобы обратные вызовы проходили так, как они должны были, я обнаружил, что когда я отключаю свой ПК от общедоступной сети, в которой я нахожусь, сервер-клиентная связь работает отлично и без проблем (даже с большим количеством клиентов).
Кто-нибудь знает, в чем проблема, почему я не могу запустить эти приложения, правильно взаимодействующие с обратными вызовами, пока они подключены к моему компьютеру к указанной сети?Есть какой-то конфликт?
Спасибо!
----- РЕДАКТИРОВАТЬ (11/11/2011 17:15) -----
После первого ответа Криса Лайвли я былпосле установки брандмауэра, и я обнаружил, что даже после отключения брандмауэра проблема все еще остается.