IPC (Межпроцессная коммуникация) в .Net C#
Привет,
Кто - нибудь может мне это сказать?...
Можете МПК удаленной работы на двух сетевых систем. Если да,то как ? Пожалуйста, помогите мне.
Я знаю о TCP ... он прекрасно работает. Я хочу знать только об IPC.
С я использую IPCChannel для удаленного взаимодействия в пространстве имен системы.Во время выполнения.Удаленное взаимодействие.Channels.Ipc. и я сделал два приложения, одно из которых является сервером, а другое-клиентом.Я зарегистрировал IPCChannel на сервере с помощью
Имя порта(9090). сервер-это не клиент, а другая система. а теперь я запускаю сервер. и когда я пытаюсь подключить свое клиентское приложение к серверу. затем я получаю погрешность...
"Не удалось подключить порт Ipc"
вот мой код с частью BL:
//Это моя бл часть
namespace RTMSyncStatusLib { public interface IRTMSyncStatus { void SetServiceStatus(string status); string GetServiceStatus(); } public class RTMSyncStatus : MarshalByRefObject, IRTMSyncStatus { private string ServiceStatus = string.Empty; public void SetServiceStatus(string status) { ServiceStatus = status; } public string GetServiceStatus() { return ServiceStatus; } } }
//Это мой серверный код
IpcChannel channel = new IpcChannel("192.168.2.207:9090"); ChannelServices.RegisterChannel(channel, false); RemotingConfiguration.RegisterWellKnownServiceType(typeof(RTMSyncStatusLib.RTMSyncStatus), "RTMRemoteStatus", WellKnownObjectMode.Singleton); Console.WriteLine("RTMSync Ststus Server is ready at "+DateTime.Now.ToString()); Console.ReadLine();
//Это моя клиентская часть
IpcChannel ipcChannel = new IpcChannel(); ChannelServices.RegisterChannel(ipcChannel, false); objRTMStatus = (RTMSyncStatusLib.IRTMSyncStatus)Activator.GetObject(typeof(RTMSyncStatusLib.IRTMSyncStatus), "ipc://192.168.2.207:9090/RTMRemoteStatus"); if (objRTMStatus != null) { timerRTM.Start(); } else { MessageBox.Show("Any Problem Occured! or RTMSync Status Server is not running!"); }
плз с моим кодом. и помоги мне.
Спасибо