Mono для windows что это

990x.top

Простой компьютерный блог для души)

Папка .mono появилась на диске — что это? (mono.msi)

Данная статья расскажет о предназначении папки .mono, которую вы можете заметить у себя на локальном диске.

Папка .mono — что это такое?

Папка компонента, связанного с .NET Framework, который необходим для работы некоторых приложений, игр. Папка может появиться например после установки игры Robocraft.

Стандартное расположение папки:

Директория может быть скрытой.

На самом деле Mono — некий проект, который занимается системой, основанной на .NET Framework. Простыми словами это компонент, который используется при создании некоторых программ, игр. Само по себе ПО .NET Framework от Microsoft — платформа, которая необходима для работы многих программ, включая игры.

Каталог .mono, расположенный в директории игры Hearthstone:

Также может быть в директории ProgramData:

Папка .mono — можно ли удалить?

Если папка весит немного — не стоит удалять, лучше оставить, она может понадобиться для работы некоторого ПО. Когда директория имеет большой размер — лучше сперва создать точку восстановления, а потом уже удалять.

Точку восстановления создавать очень желательно (в случае проблем сэкономит время и сохранит нервы):

  1. Откройте панель управления, можно например так: зажмите Win + R > введите команду control или control panel > кликните ОК.
  2. Найдите и запустите значок Система.
  3. Далее кликните слева Защита системы.
  4. Выберите системный диск (обычно имеет букву C) > нажмите кнопку Создать.
  5. Назовите точку восстановления, можно просто указать название До удаления папки .mono.

Заключение

  1. Папка .mono — относится к платформе .NET Framework, необходима для работы софта, например игр, некоторых приложений.
  2. Если размер директории .mono небольшой — лучше оставить, не удалять.
  3. При удалении лучше заранее создать точку восстановления.

Mono для windows что это

Mono — проект по созданию полноценного воплощения системы .NET Framework на базе свободного программного обеспечения. Основной разработчик проекта Mono — корпорация Xamarin [2] , ранее Novell. Проект возглавляет Мигель де Икаса, известный разработчик, основатель проекта GNOME. Реализации Mono существуют для следующих операционных систем: Windows, Linux, BSD (FreeBSD, OpenBSD, NetBSD), Solaris, Mac OS X, Apple iOS, Wii [3] . Поддерживаются платформы: s390, SPARC, PowerPC, x86/x86-64, IA-64, ARM, Alpha, MIPS, HP PA [3] .

Содержание

Состав и функциональность

Mono включает в себя компилятор языка C# — dmcs [4] , среду исполнения .NET — mono (с поддержкой JIT) и mint (без поддержки JIT), отладчик, а также ряд библиотек, включая реализацию WinForms, ADO.NET и ASP.NET, а также компиляторы smcs (для создания приложений для Moonlight) и vbc (для приложений, написанных на VB.NET).

В рамках проекта также разрабатываются привязки для графической библиотеки GTK+ на платформу .NET.

Также Mono содержит альтернативу структуре WPF-приложений (XAML + C# или любой другой язык, который поддерживается в данной среде исполнения). Данный язык называется Glade, при помощи него можно собирать GTK-приложения.

Mono может исполнять модули, написанные на языках C#, F#, Visual Basic .NET, Java, Boo, Nemerle, Python, JavaScript, Erlang, SmallTalk, Lisp, PHP и Object Pascal (при наличии компилятора в среде .Net/Mono). Ожидается также поддержка языков C, Ada 2005 и Eiffel.

Юридические вопросы

После заключения Microsoft договорённости с компанией Novell [5] платформа Mono была официально признана реализацией .NET на Unix-подобных операционных системах (Linux, Mac OS X и других). Однако договорённость касается только Novell и клиентов Novell; также технологии ASP.NET, ADO.NET и Windows.Forms не были стандартизированы ECMA/ISO, и использование их в Mono находится под угрозой юридических претензий со стороны Microsoft (претензии возможны только в странах, где существуют патенты на программное обеспечение [6] ). Mono предоставляет реализацию ASP.NET, ADO.NET и Windows.Forms, но в то же время рекомендует не использовать эти API. [6]

Принятая в проекте лицензия на компилятор и другие программы — GNU GPL. Лицензия на среду исполнения и другие библиотеки — GNU LGPL. Лицензия на библиотеки классов —MIT.

Читайте также:  Laserjet 1020 linux drivers

Компания Microsoft объявила, что стандарты C# (ECMA 334) и инфраструктуры CLI (ECMA 335) теперь попадают под действие документа Community Promise (Обещание Сообществу), официально заявляющего отсутствие патентных или иных претензий на стандартизированные таким образом разработки. Данный шаг снимает многочисленные противоречия, касающиеся платформы Mono, которая фактически является opensource реализацией этих стандартов, и дает ей иммунитет на случай, если патентный вопрос будет поднят вновь.

Данное заявление опубликовал Старший менеджер по связям с общественностью Департамента Стратегий платформ Peter Galli как ответ на недавние запросы Мигеля де Икасы относительно лицензирования стандартов ECMA 334 и 335. В нём, в частности, говорится, что, давая обещание сообществу, Microsoft добровольно отказывается от патентного преследования юридических и частных лиц производящих, использующих, распространяющих, рекламирующих, продающих любые оговоренные в патентах реализации, независимо от модели их разработки и распространения, включая открытые модели разработки, такие как LGPL и GPL.

При этом открытым остается вопрос реализации технологий, не упомянутых в Community Promise. В связи с этим вице-президент Novell Мигель де Икаса объявил, что с этого момента проект Mono будет разбит на две ветки:

FastReport .Mono. Что это, и для чего?

Моно — это платформа разработки с открытым исходным кодом на основе .NET Framework, позволяет разработчикам создавать кросс-платформенные приложения. Реализация Mono .NET основана на стандартах ECMA для C # и Common Language Infrastructure.

Разработанный компанией Novell, Xamarin, а теперь Microsoft и .NET Foundation, проект Mono имеет активное и энтузиастское сообщество. Mono включает как инструменты разработчика, так и инфраструктуру, необходимую для запуска клиентских и серверных приложений .NET.

Платформа Mono состоит из нескольких компонентов:

Компилятор C # — поддерживает C # стандарта 1.0, 2.0, 3.0, 4.0, 5.0 и 6.0 (ECMA).

Mono Runtime — среда выполнения ECMA Common Language Infrastructure (CLI). Среда исполнения предоставляет компилятор Just-in-Time (JIT), компилятор Ahead-of-Time (AOT), загрузчик библиотек, сборщик мусора и др.

Библиотека классов .NET Framework. Платформа Mono предоставляет реализацию библиотек WinForms, ADO.Net, ASP.Net и других.

Mono Class Library – было создано множество классов с дополнительной функциональностью специально для Mono, которые выходят за рамки библиотеки базового класса, предоставляемой Microsoft.

Несмотря на предвзятое отношение разработчиков к платформе Mono, многие известные компании используют его. Например:

  • Novell использует Mono для клиентских и серверных приложений;
  • Unity Technologies использует Mono в инструменте моделирования компьютерных игр Unity 3D. Это дает возможность создавать кросс-платформенные видеоигры;
  • Artisteer использует Mono для переноса своего веб дизайнера на другую платформу. Начиная с версии 2.2, можно запустить свое программное обеспечение с помощью Mono.

Так как кросс-платформенных генераторов не так уж и много, а действительно хороших, так вообще по пальцам посчитать можно, FastReports решила создать генератор отчетов для Mono. Тем более, что уже есть готовый популярный генератор отчетов FastReport.Net, на базе которого и был создан FastReport.Mono. Он появился в 2013 году, и на тот момент повторял функционал FastReport.Net. Однако сейчас, между ними есть различия. Что уж таить, FR.Net значительно продвинулся вперед. Тем не менее FastReport.Mono остается сильным конкурентом в своей нише. И лично я не знаю других генераторов отчетов под фреймворк Mono с таким богатым функционалом.

Что же предлагает FastReport.Mono?

  • Удобный и функциональный дизайнер отчетов;
  • Подключение к любой БД, и не только. Даже текстовые файлы могут быть источниками данных, не говоря уже об XML и JSON;
  • Наличие встроенного скрипта отчета. Что наделяет отчет огромными возможностями. Ведь вы можете использовать библиотеки Mono прямо в отчете, для произведения преобразований данных, а также работать с объектами отчета;
  • Веб отчеты, на основе ASP.Net;

Давайте рассмотрим детальнее. Итак, с FastReport.Mono можно работать в разных операционных системах. Ну конечно же, Mono кросс-платформенный фреймворк. Поэтому нам доступны системы: Windows, MacOs, семейство Linux.

Для работы с Mono, а соответственно и с FastReport.Mono подходят следующие среды разработки:

Microsoft Visual Studio (под Windows), MonoDevelop (Windows, MacOs, Linux) и Embarcadero Delphi Prism (Windows, MacOs, Linux).

Языки программирования, для работы с FR.Mono: C#, VB.Net, Oxygene (Embarcadero Delphi Prism).

Язык встроенного скрипта отчета: C#, VB.Net. Все также, как и в FastReport.Net.

Читайте также:  Посчитать количество символов linux

Источники данных, доступные по умолчанию: XML, CSV. А для подключения к базам данных нужно использовать источник данных пользовательского приложения, или внешние коннекторы, устанавливаемые в систему.

Интересные особенности генератора отчетов:

  • диалоговые формы – перед отображением отчета можно вывести форму с элементами управления. Таким образом пользователь отчета может задать параметры отображения отчета. Например, отфильтровать нужные значения;
  • наследование отчетов – возможность использовать отчет как базовый шаблон для других. Это удобно, когда вы делаете много подобных отчетов. Кроме того, изменения в базовом отчете отобразятся во всех наследованных отчетах. Это тоже можно отнести к плюсам. Ведь не нужно изменять большое количество отчетов, если требуются правки базового шаблона;
  • Компонент предварительного просмотра отчета – позволяет просматривать отчет и делать его экспорт, отправлять email, а также управлять просмотром отображая план отчета, переходить между страницами;
  • Дизайнер отчета может быть вызван отдельно как самостоятельная программа, может быть вызван во время разработки пользовательского приложения, а также во время выполнения пользовательского приложения. Последний вариант очень интересен. По сути вы встраиваете дизайнер в свою программу и даете пользователю возможность редактировать отчеты самостоятельно.
  • Продвинутый режим печати – еще один продуманный инструмент. Настройки печати очень богатые.

Веб отчеты реализуются посредством технологии ASP.Net и ASP.Net MVC. Что тут сказать — современный и востребованный подход.

Список возможных экспортов отчета достаточно большой:

  • Acrobat PDF;
  • Images Jpeg/PNG/BMP/GIF/TIFF;
  • RichText;
  • Word OOXML (docx);
  • PowerPoint OOXML (pptx);
  • HTML;
  • MHT (web archive);
  • Microsoft XPS;
  • Excel OLE;
  • Excel XML;
  • Excel binary (xls);
  • Excel OOXML (xlsx);
  • Comma separated values (CSV);
  • DBF (table);
  • Open Document Speadsheet (OpenOffice);
  • Open Document Text (OpenOffice);
  • Email;
  • PostScript;
  • Json;
  • LaTex;
  • FTP;
  • Text File / Matrix Printer;
  • Clouds (DropBox);
  • Clouds (Box);
  • Clouds (FastReport Cloud);
  • Clouds (GoogleDrive);
  • Clouds (OneDrive).

Обратите внимание, последние элементы списка – Clouds – это по сути сохранение отчета в облачные сервисы.

Какой смысл Mono в Windows?

60 Adam Haile [2009-04-15 16:18:00]

Это может быть глупый вопрос. но я просто смотрел проект Mono, и у них есть раздел об установке Mono в Windows, Но, поскольку Windows, очевидно, уже имеет среду выполнения .NET, может ли кто-нибудь сказать мне, что именно означает, что Mono для Windows? Помогает ли это с развитием кросс-платформы или чем-то еще?

12 ответов

62 Решение Kibbee [2009-04-15 16:21:00]

Поскольку Mono не реализует .Net 100% то же, что и MS.Net Framework, хорошо, что вы можете протестировать Mono без необходимости запуска в Linux. Также Mono имеет привязки для создания форм с GTK, которые MS не поддерживает.

Есть несколько возможностей Mono, которые .NET не делает.

Моно очень модульно. Вы можете разбить его на мелкие кусочки и развернуть только те части, которые вам нужны. Не хотите System.Xml? Хорошо, все прошло.

Моно вложимо. Вы можете разместить его внутри своего приложения C/С++, чтобы пользователи могли script из безопасной управляемой изолированной среды. Наиболее известным примером этого является mod_mono, в котором размещается Mono внутри веб-сервера Apache, и как, например, реализуется ASP.NET в Mono. Эта функция отлично сочетается с упомянутой выше модуляцией.

Это уже упоминалось: статическая привязка. Также отлично сочетается с модуляцией.

Компилятор как услуга — еще один. Андерс Хейлсберг говорил об этом в течение долгого времени, и, может быть, может быть, он будет готов к С# 5.0. Ну, у Моно уже есть это, и на самом деле это было в течение многих лет.

Miguel de Icaza, Mono Lead Developer также имеет инициативу, которую он называет «Embrace and Extend.NET», которая расширяет CLI способами, которые не могут (в настоящее время) возможны с другими реализациями CLI (включая .NET). Пока что Embrace и Extend.NET имеют три функции.

Mono.Simd, который обеспечивает безопасный и контролируемый доступ к инструкциям SIMD базового ЦП (например, SSE на Intel или AltiVec на PowerPC). Используется для игр и графики.

64 Бит-массивные индексы, которые разрешены спецификацией ECMA, но Mono — единственная виртуальная машина, которая фактически предоставляет их. Используется в суперкомпьютере.

И совсем недавно, продолжения. Это первый раз, когда Mono выходит за пределы области спецификации: индексы длинного массива отлично действуют в соответствии с спецификацией, а Mono.Simd также работает над каждой реализацией, совместимой с CLI (хотя и очень медленной), но Mono.Tasklet нуждается в специальных поддержка от VM, которая не является частью CLI или .NET. Это используется для логики игры и, например, в Second Life.

Читайте также:  Large glass panel windows

Mono делает то, что не делает .Net.

Например, mono поддерживает статическое связывание, поэтому вы можете создавать, компилировать и распространять свое приложение, не требуя отдельного установщика во время выполнения. Если вы создали приложение, которое полагается на моно для кроссплатформенности, есть некоторые отличия от .Net, и поэтому придерживаться моно в Windows — это лучшая гарантия совместимости.

.Net делает некоторые вещи, которые моно не делает.

В BCL есть несколько мест, которые еще не перенесены для моно, например, WPF и Winforms.

Если вам нужно приложение, которое будет также работать на Mac/Linux, вы, вероятно, сначала захотите разработать его для моно, даже если вы выполняете большую часть работы с Windows.

Примечание: все это предшествует .Net Core/Standard.

Зачем нужна Windows, когда вы можете запустить реальную вещь?

Существуют различные причины:

Поддержка Windows помогает нам идентифицировать переносные части Mono из не переносных версий, помогая Mono стать более будущее.

Это помогает нам, так как мы можем изолировать проблемы в Моно разбиение проблемы (это время выполнения или проблема с ОС?).

Около половины участников Mono являются разработчиками Windows. Они имеют много разных причин для способствуя усилиям, и мы считают очень важным разработчики запускают среду выполнения в Windows не заставляя их использовать новую операционная система.

Mono не сильно модифицирует реестр Windows, обновляет системные DLL, установить DLL на Windows/System32 дорожка.

Это помогает разработчикам Windows проверить свой код под Моно, прежде чем они будут внедрены в Linux.

Моно и приложения, встраивающие Mono, могут быть развернуты без (вы можете «xcopy» развернуть свои приложения и требуемого Моно файлов без установки .NET. во время выполнения).

Если вы хотите разработать кросс-платформенное приложение на С#, то использование Microsoft не является самым умным, поскольку нет полностью совместимой альтернативы для других платформ.

Таким образом, использование Mono для Windows для разработки приложений гарантирует, что у вас мало проблем с переносом на другие ОС (если вы избегаете других ям, таких как P/Invoke).

8 jpobst [2009-04-15 17:57:00]

Некоторые люди использовали его, потому что им не разрешено устанавливать .Net-инфраструктуру на своих ПК с Windows из-за количества файлов реестра и системных файлов. (В сильно контролируемых средах.)

Моно, с другой стороны, содержится в программных файлах самостоятельно и записывает только раздел реестра с указанием пути (который не нужно запускать).

Я думаю, что это глупо, но это то, о чем нам говорили несколько пользователей.

В основном это помогает в разработке приложений Mono для конкретных библиотек Mono. Также, чтобы помочь продвинуть дело, чтобы разработчики могли работать в своей естественной среде при разработке для Mono.

В то время как не имеет большого интереса, есть несколько случаев, когда моно имеет улучшения по сравнению со стандартным временем выполнения Microsoft. В этом году Мигель рассказал о некоторых из них в PDC:

Смотрите эти сообщения:

даже если у вас есть программа, динамически связанная с Mono, вы можете иметь эту скомпилированную .exe и Mono runtime на pendrive и перейти на другой компьютер без .NET/Mono и запустить эту программу на новом ПК без какой-либо установки времени исполнения, т.е. он ведет к портативным приложениям (особенно полезным в качестве переносных приложений для USB-накопителей) Это невозможно с .NET. У вас должно быть время выполнения .NET, установленное определенным способом установки, то есть время выполнения, содержащее копию папки и вставку, невозможно.

1 Zifre [2009-04-17 02:08:00]

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

Чтобы добавить к многочисленным причинам, упомянутым в других ответах, Mono для Windows может потребоваться установить на Wine, чтобы разрешить запуск приложений .Net внутри Wine.

Оцените статью
Adblock
detector