Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > вызов C# из C++ драйвера


Автор: lostam 23.6.2009, 22:34
Очередной привет глубокоуважаемым знатокамsmile
есть тестовый драйвер написаный на C++  в Linux
есть библиотека функций на C#  чтобы строить, посылать/получать респонсы  в/из TCP socket   
Хотелось бы из C++ драйвера передавать параметры для комманд в C# 
Зараннее благодарен если кто чего умное (и, главное, достаточно простое для чайника)  посоветует.

Автор: azesmcar 23.6.2009, 22:51
Я так понимаю драйвер и программа на разных машинах? (драйвер ведь по линукс).
Ну тогда сокеты - чего тут думать. Если на одной машине - можно Pipe.

Автор: lostam 24.6.2009, 01:39
Azesmcar,  спасибо за отклик! Но я не совсем понял твой совет: ты предлагаешь посылать параметры в сокет, а там написать на C# программу, которая будет строить комманды и посылать их дальше в аппликацию?

Вся проблемма в том, что я не хотел бы писать программу (listener?) и думал что можно как-нибудь обойтись тем что есть , то есть из C++ вызывать функции уже написанные на C# типа: 

Код



public void SendOrder(IDictionary<int, string> orderAttributes, int prefixLength)

        {
            string message = " бла-бла-бла";

            clientStreamWriter.Write(message);

            clientStreamWriter.Flush();

        }

public void SendAchnowledgement(IDictionary<int, string> AcknowledgementAttributes, int prefixLength)

        {
            string message = " бла-бла-бла";

            clientStreamWriter.Write(message);

            clientStreamWriter.Flush();

        }

etc. 



Такое возмозжно?Такое возмозжно?  Скажем C++  код находится в driver.h файле, а  функции построения комманд в фаиле  build_commands.cs.  Kак компилировать и как писать вызов?




Автор: azesmcar 24.6.2009, 08:39
lostam

Расскажи о задаче подробнее. Я так понимаю есть две программы, одна на С++, другая на С#. Нужно огранизовать передачу данными между этими приложениями. Socket, Pipe, можно через файлы (читай через Ж...).

Автор: kosmonaFFFt 24.6.2009, 12:13
Насколько я знаю .NET, под нее можно скомпилить с++ код и собрать код на С# и c++ в одну .NET сборку, но я могу и ошибаться...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)