Заставить существующее приложение C # Windows работать на Linux - PullRequest
0 голосов
/ 29 апреля 2009

Дубликат: Запуск .NET exe в linux

Здравствуйте,

Можно ли сделать так, чтобы мое существующее приложение Windows Forms, созданное с использованием Visual Studio 2008 и .Net framework 2.0, работало в Linux путем перекомпиляции в Linux с меньшим количеством / без изменений кода?

Спасибо

Ответы [ 4 ]

4 голосов
/ 29 апреля 2009

очень возможно, однако, в зависимости от вашего приложения ваш пробег может варьироваться. no-nos включает сторонние библиотеки / DLL, которые зависят от вызовов COM и Win32, а также P / Invokes. возможно, вам также придется остерегаться кода, который выполняет конкатенацию файлов / каталогов, поскольку unix использует «/» в качестве разделителя каталогов, а Windows использует «\».

1 голос
/ 08 августа 2009

Я предлагаю вам перекомпилировать тот же код в Mono IDE и внести любые незначительные изменения, которые могут потребоваться. Я делал это много раз.

0 голосов
/ 29 апреля 2009

да, в последний раз я проверял, их DataGridView улучшается, теперь он может скрывать столбцы, однако их VirtualMode на dgv еще не работает.

Я использую Mono в основном для Remoting, теперь тип DateTime совместим с Remoting (да!) В Mono 2.4. раньше (в 1.9) мне приходилось преобразовывать поля даты и времени в строку, чтобы их можно было переносить с и на удаленный средний уровень, в 2.4 это больше не требуется.

Используйте это руководство для написания портативного программного обеспечения: http://mono -project.com / Рекомендации: Application_Portability

пример:

Чтобы написать переносное программное обеспечение, вы должны убедитесь, что вы используете System.IO.Path.DirectorySeparatorChar (HTTP: / monodoc / П: System.IO.Path.DirectorySeparatorChar) характер, когда вы должны объединить пути, или даже лучше, использовать System.IO.Path.Combine (HTTP: / monodoc / M: System.IO.Path.Combine (строка, строка)) метод объединения путей.

0 голосов
/ 29 апреля 2009

Вы можете получить некоторую информацию здесь: Запустить .NET exe в Linux

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