Можно ли включить приложение C#, разработанное с помощью VS 2015, в собственное приложение MFC C++ (win 32)?
У моего клиента есть нативное (Win32) приложение deskstop, разработанное с VS 2010, они хотят прекратить работу нескольких его модулей. Новая функциональность этих модулей была предоставлена нам поставщиком программного обеспечения в настольном приложении C#, разработанном совместно с VS 2015.
Я должен выяснить, можно ли объединить эти новые характеристики в старое приложение, но я не хочу кодировать все снова. Я очень обеспокоен различными версиями IDE. Может быть, мне придется конвертировать старый в VS 2015. Я не думаю, что смогу сделать наоборот.
Я имею в виду включить приложение C# в качестве модуля для приложения MFC C++.
Приложение C# указывает на платформу 4.5 Net framework.
Я ищу через сеть, чтобы увидеть, могу ли я получить то, что хочет мой клиент. Если нет, я должен выяснить, что должно быть лучшим решением, которое я могу дать, чтобы решить эту проблему, может быть, снова закодировать приложение C# в C++, а не наоборот, MCF-это очень большое приложение, и я еще не очень хорошо знаю этот язык. Но я был бы очень признателен, если бы кто-нибудь помог мне достичь этого или посоветовал, где найти документацию или примеры предыдущих и решенных проектов, подобных этому.
Заранее спасибо.
Что я уже пробовал:
Я нахожусь в процессе изучения обоих приложений и поиска подходящего решения. У меня немного больше практики в C#, чем в C++, но все же мне приходится иметь дело с процессом изучения обоих языков и находить ответ на то, что мне нужно.
Это было очень трудно для меня, может быть, я не должен был принимать этот проект, но мне действительно нужны деньги.
Garth J Lancaster
Я думаю, вам нужно определить это "включить приложение C# в качестве модуля для приложения MFC C++" немного лучше - если вы имеете в виду "поделиться кодом", то это действительно сложно, см. ответ Филиппа Мори - если вы имеете в виду запустить приложение C# из приложения MFC, то это не так уж сложно - вы просто используете CreateProcess со стороны c++. Очевидно, что если вам нужно поделиться данными, которые приложение c# создает в приложении c++, вам нужно быть осторожным, но это не невозможно ... пожалуйста, немного уточните свои "требования" (используйте зеленый виджет "улучшить вопрос" в нижней части вашего вопроса)
Miguel Altamirano Morales
Большое спасибо, Гарт, пожалуйста, извините меня, я не говорю по-английски на 100%, иногда я не могу ясно объясниться.
вот такая ситуация: у моего клиента есть нативное (Win32) приложение deskstop, разработанное с VS 2010, они хотят прекратить работу нескольких его модулей. Новая функциональность этих модулей была предоставлена нам поставщиком программного обеспечения в настольном приложении C#, разработанном совместно с VS 2015.
Моя цель-объединить эти новые характеристики в старое приложение, но я не хочу кодировать все снова. Я очень обеспокоен различными версиями IDEs. Может быть, мне придется конвертировать старый в VS 2015. Я не думаю, что смогу сделать обратное.
Ответ Филиппа Мориса кажется очень подходящим для этого. Но мне придется искать каждую точку на нем.
Philippe Mori
Это несколько трудно понять. Похоже, что C++ уже имеет всю функциональность, но клиент не хочет, чтобы некоторые из них были удалены. Затем кажется, что вы вернули эту функциональность и хотите вернуть ее обратно в приложение. Таким образом, почему бы вам не создать 2 приложения. Один, который включает в себя все, а другой, который не включает в себя пару модулей?
Кроме того, если вы добавите обратно эту функциональность в C#, у вас возникнет та же проблема, что и у приложения, включающего модули, которые клиент не хочет?
Вероятно, вам было бы лучше иметь все проекты в VS 2015. Требуется ли это? Трудно сказать, так как это зависит от того, на какой фреймворк нацелено ваше приложение и зависит ли код от новых функций компилятора.
Miguel Altamirano Morales
Функциональность C++ не была удалена, потому что я все еще ищу, что делать, и работает нормально, но клиент больше не хочет его использовать. Он работает с внешним устройством, и это будет изменено. К сожалению, я не могу дать больше подробностей.
Да, я говорил об использовании этих двух приложений отдельно, но все захваченные данные должны поступать в одну и ту же базу данных, зашифрованную, и в другую, в формате XML, чтобы быть отправленными в интернет через другое приложение. В любом случае, может быть, это лучший вариант, я его проанализирую.
Большое вам спасибо, Филипп.