Как сделать приложение на C ++ / CLI переносимым в Windows и Unix? - PullRequest
0 голосов
/ 19 июня 2011

У меня есть клиент с управляемой библиотекой C ++ DLL, которая должна работать в Unix.Там не так много ссылок на специфический для .NET код, за исключением файлов, которые получают входные данные от внешнего процесса / потока.В настоящее время проект компилируется в Visual Studio.NET 2010. Какие шаги необходимо предпринять, чтобы это произошло?Очевидно, мне нужно будет создать make-файлы на стороне Unix, например.Еще одна вещь, которую мне нужно будет сделать, это заменить классы, которые используют свойства .NET, на использование методов получения / установки (это лучший способ?).Их интерфейс GUI в настоящее время представляет собой приложение Excel / Visual Basic, которое вызывает эту библиотеку DLL для выполнения расчетов с набором данных.Тем не менее, они собираются переписать и интерфейс (не уверен, какую технологию они собираются использовать).Я предполагаю, что еще мне нужно сделать, это заменить типы CLI в коде на собственные типы.До сих пор я прав в своих предположениях?Какие еще большие вещи нужно будет сделать?Спасибо!

1 Ответ

0 голосов
/ 19 июня 2011

Управляемый код сильно отличается от собственного кода - вам нужно будет полностью переписать все части DLL, которые зависят от .NET Framework, предполагая, что установка Mono или чего-то подобного не возможна.А затем скомпилируйте его как родной C ++ для Linux.Некоторый код .NET легко переносится, например использование коллекций в стандартные контейнеры, но некоторые из них не будут, например, вам придется разрабатывать стратегию владения ресурсами с нуля.Я также был бы обеспокоен тем, как код , вызывающий , будет изменен для запуска в Unix, если он ожидает управляемого интерфейса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...