Как организовать обмен данными между двумя программами локально на одном ПК?

Добрый день!
Есть одна популярная библиотека, которая написана на С#. В своем проекте планировал использовать Java. Переписывать библиотеку на Java или использовать в своем проекте C# не очень хочется. Появилась идея организовать обмен данными между библиотекой на C# и любым другим ЯП через некое подобие API. Вопрос - возможно ли это сделать, как лучше сделать, какие материалы почитать? Пока в голову приходит только способ обмена через .txt-файл, но это не самый надежный вариант, поэтому буду использовать его только в крайнем случае.
Заранее спасибо за помощь!
  • Вопрос задан
  • 2886 просмотров
Решения вопроса 1
Способы взаимодействия можно организовать через сокеты, общую память, файлы, именованые каналы, rpc и тп.
Я бы организовал через сокеты или общую память (shared memory)
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
@SZolotov
Asp.net core, MAUI,WPF,Qt, Avalonia
Да проще найти библиотеку на C++/C, собрать нативную DLL и не городить костыли
Ответ написан
WCF Windows Communication Foundation
Video - Урок 1. Введение в Windows Communication Foundatio...

Эта технология позволит вам общаться внутри 1 компьютера (pipe каналы), или по сети, для программ на любых языках.

Простым языком - это супер обертка от Microsoft вместо велосипедов которые люди были вынуждены делать до появления WCF. Она абстрагирует вас от проблем взаимодействия, их контроля, безопасности, очереди, синхронизации.
Пример - не надо париться с сокетами, просто сделайте WCF используя tcp адрес и байдинг, все остальное будет сделано за вас автоматически.
Ответ написан
vpuhoff
@vpuhoff
Программист в свободное от работы время
.NET Remoting, дочерние приложения будут "исполнять" нужный им код "внутри" головного.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы