Как мне отправить переменную из одного исполняемого файла в другой?

#winforms

#winforms

Вопрос:

Мне нужно отправить сообщение из одного исполняемого файла в другой.

  1. Исполняемому файлу # 1 (моя основная программа — всегда запущенная) необходимо отправить строковую переменную и запустить исполняемый файл # 2 (исполняемый файл # 1 будет ждать, пока исполняемый файл # 2 не отправит строку обратно).
  2. Исполняемый файл # 2 будет использовать эту строку для завершения задачи.
  3. Как только задача будет завершена, исполняемый файл # 2 отправит исполняемому файлу # 1 результат (строку).
  4. Исполняемый файл # 2 завершит работу сам по себе после завершения.

Я искал решения в Интернете, но безуспешно.

Комментарии:

1. Является ли исполняемый файл # 2 обычной программой winforms, которую вы иногда хотите попросить выполнить какую-то работу, или это единственная цель в жизни — предоставлять услуги для других процессов?

Ответ №1:

Существует несколько способов выполнения IPC (межпроцессное взаимодействие), но самым простым способом может быть просто общий файл. Исполняемый файл # 2 будет периодически опрашивать, есть ли что-нибудь в файле. Исполняемый файл # 1 запишет строку в этот файл, когда будет готов.

Этот метод очень прост и фактически, очень успешно используется для интеграции между торговыми системами в финансовой индустрии.

Вы даже можете установить простую связь по протоколу TCP / IP между процессами, но это потребует больше работы. Если вы используете Linux, вы также можете использовать именованные каналы.

Ответ №2:

Попробуйте использовать именованные каналы, для примера перейдите по этой ссылке Как: Использовать именованные каналы для обмена данными между процессами по сети это также может сработать для процессов, запущенных на одном рабочем столе.