Взаимодействие процессов по IpcChannel
Недавно столкнулся с необходимостью организовать взаимодействие двух .NET процессов в рамках одного компьютера. Немного покумекав, решил для этих целей воспользоваться «родной» для платформы .NET технологией – Remoting . Первоначально в качестве канала для «общения» процессов планировал выбрать протокол TCP ( TcpChannel ), но затем обнаружил что во втором фреймворке появился новый канал ремоутинга, который идеально подходит для мой задачи – IpcChannel . Этот канал использует в своей работе именованные каналы (named pipes) и был разработан специально для организации взаимодействия нескольких процессов в рамках одного компьютера и согласно MSDN , работает намного быстрее TCP и HTTP. Использование технологии Remoting крайне просто и ниже я привел пример сервера и клиента взаимодействующих по каналу IpcChannel. Ниже приведен код для сервера. class ServerHost { static void Main( string[] args ) { IDictionary settings = new Hashtable(); settings["portName"] = &q