Как передать сообщение из одной программы в другую?

StackOverflow https://stackoverflow.com/questions/607530

  •  03-07-2019
  •  | 
  •  

Вопрос

У меня есть приложение .Net 3.0, которому необходимо передать целое число в другую программу на том же компьютере.Для этого я использовал службу WCF, но столкнулся с проблемами с правами пользователя при попытке ХОСТИНГА службы на локальном компьютере.Будем очень признательны за любые мысли о том, как этого добиться.

Спасибо,

Дэйв

Это было полезно?

Решение

WCF по-прежнему остается лучшим вариантом.

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

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

Другие советы

Удаленное взаимодействие .NET это способ передачи сообщений между программами.

Как вы принимали гостей?Обратите внимание, что программе без прав администратора, использующей http, потребуются разрешения на использование порта (в http.sys).Это через netsh (Vista) или (IIRC) httpcfg (XP).

Видеть здесь, например.

WCF это путь.Вы должны использовать NetNamedPipeBinding для обеспечения связи на одной машине.
Подробнее о WCFBindings https://msdn.microsoft.com/en-us/library/ms730879(v=vs.110).aspx

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top