2013-04-28 2 views
1

У меня есть Программа A работает с некоторыми переменными. Я хочу иметь вторую программу - Программа B - которая может выполняться отдельно и при запуске будет прикрепляться к Программа A. От Программа B Я хочу, чтобы иметь возможность изменять и изменять определенные переменные в Программа A. Обе программы были написаны мной.Приложение 2 приложения

Я видел, как это происходит с такими, как Dwarf Fortress и Dwarf Therapist, который позволяет вам изменять различные переменные в одной программе, которая будет вносить изменения в другую.

Предполагаю, что вы настраиваете область общей памяти и ссылаетесь на переменные с указателями, но возможно ли это с C# .Net и если да - как?

+0

Можете ли вы написать код для обеих программ? –

+0

@MatthewWatson - Да, я могу. Я обновлю вопрос – Ewan

ответ

2

Вы можете использовать memory-mapped files для создания области памяти, разделяемой между приложениями.

Но более чистым и надежным решением будет введение API в вашу программу, чтобы другие программы могли взаимодействовать с ним. Вы можете использовать WCF, Thrift или другие технологии для этого.

+0

Я согласен - я бы пошел на [Windows Communication Foundation] (http://msdn.microsoft.com/en-GB/library/ms731082.aspx). [Вот простой пример] (http://weblogs.asp.net/ralfw/archive/2007/04/14/a-truely-simple-example-to-get-started-with-wcf.aspx), но вы 'd хотите изменить 'NetTcpBinding()' на 'NetNamedPipeBinding()' в этом примере. –

Смежные вопросы