Связь между приложениями C # - простой способ - PullRequest
15 голосов
/ 17 января 2010

У меня есть две программы на C #, и я хочу пересылать некоторые данные между ними. (И проверьте, поступили ли данные в другое приложение.) Обе программы всегда будут работать на одном компьютере, поэтому никаких сетевых возможностей не требуется. Я уже читал здесь несколько вопросов с похожими темами, но я не совсем уверен, какой метод мне подходит. (WCF, Remoting и т. Д.)

Что я хочу знать, какой из них легче реализовать для новичка в C #? (В любом случае, я не хочу, чтобы это усложнялось, я хочу отправить только несколько целых чисел и текст).

Если между сложностями нет реальной разницы, какие преимущества имеет одно над другим?

Я бы тоже очень оценил простой пример кода.

Заранее спасибо.

Ответы [ 4 ]

13 голосов
/ 17 января 2010

Вы можете использовать Pipes для отправки данных между различными экземплярами вашего приложения. Если вам просто нужно сообщить другому экземпляру, что что-то произошло, вы можете отправлять сообщения из одного приложения в другое с помощью API SendMessage.

11 голосов
/ 17 января 2010

WCF, по сути, объединяет различные методы связи между приложениями (веб-службы, удаленное взаимодействие, MSMQ и т. Д.) В единый пакет, так что они программно одинаковы в том, как они используются, и подробности того, какой метод используется для настройки привязки между. Возможно, небольшое упрощение, но по сути, о чем оно.

Стоит войти в WCF, если вам нужна межпроцессная коммуникация, и это, безусловно, мой совет относительно того, как это сделать. Стоит взглянуть на IDesign , который выпускает ряд статей на эту тему, а также некоторые библиотеки кода для повторного использования, которые могут оказаться полезными. Их Юваль Лоуи также написал превосходную книгу на эту тему,

5 голосов
/ 17 января 2010

Еще один хороший момент, связанный с WCF, заключается в том, что если ваши требования когда-либо изменятся, и вдруг вам придется перенести одно из приложений на другой компьютер, требующий теперь возможности сети, вам нужно будет только изменить конфигурацию с обеих сторон, вместо этого необходимости перекодировать.

Плюс, сказал Дэвид, WCF - это хороший инструмент для вашей сумки.

Ура, Вагнер.

2 голосов
/ 17 апреля 2011

Я обнаружил, что MSMQ прост в реализации.

...