什么是Mono,为什么会有危险?

Mono是Ximian发起的一个开源项目的名称,该项目目前由Novell推广(在收购Ximian之后),以创建一组免费的工具,这些工具基于GNU / Linux并与ECMA指定的.NET兼容。被许多GNU / Linux用户讨厌吗?

什么是单声道?

不,与猴子岛无关。 Mono 是CLI(通用语言基础结构)和C#(均由Microsoft创建)的免费实现,具体取决于发送给 ECMA 为其标准化。 此实现是开源的。

Mono包含CLI,该CLI包含负责加载类的虚拟机,jit编译器(及时)和垃圾收集器; 所有这些都是根据规范从头开始编写的 ECMA-334.

Mono还包括一个C#编译器,它是用C#矛盾地编写的,并且像CLI一样,该编译器遵循规范 ECMA-335.

此外,Mono拥有与.Net Framework库兼容的库目录,但它也具有一系列Microsoft的.Net Framework中不存在的库。 例如允许创建GTK +工具箱的本机图形界面的GTK#,Mono.LDAP,Mono.Posix等。

单声道的起源

Mono由Miguel De Icaza构思,当时该项目由他的公司Ximian赞助; 现在 Novell公司 自Novell收购Ximian以来,它是Mono项目的赞助商。

创建Mono的动机是由于寻找了有助于在Linux环境中快速创建应用程序的工具。

单声道支持的平台

Mono目前在86位的x390,PPC,SPARC和S32平台上运行; x86-64和SPARC(64位); 可以在以下操作系统中创建和执行应用程序:Linux,Windows,OSX,BSD和Solaris。

单声道与.Net框架兼容吗?

Mono的目标之一是实现与API 1.1的高度兼容,尽管与.Net Framework的API 2.0的兼容性已经有足够的工作。

这是为了确保在Windows中使用.Net Framework编译的二进制文件可以在任何Mono平台上运行,而无需重新编译该二进制文件,进而可以使用兼容的Mono -Ej:System库。数据,System.Xml等-。

Mono提供的库与.Net Framework的对应库100%兼容。 最新版本2.6.1。 除其他重要功能外,还包括:

  • 命令行界面
  • C#编译器
  • ADO.NET
  • ASP.NET
  • 网页服务
  • 系统
  • Windows窗体

后者是WindowsForms,它需要完成全部工作。 尽管应注意,该项目并未考虑为企业服务创建兼容的库。

我现在可以使用Mono创建哪些类型的应用程序?

好的,可以使用mod_mono模块创建Web类型的应用程序和Web服务,该模块允许Apache Web服务器为ASP.NET(aspx)和Web服务(asmx)页面提供服务。

也可以创建访问数据库的应用程序,例如Microsoft SQL,Oracle,Postgresql等。

在图形界面应用程序方面,建议使用GTK#,因为它所基于的工具包(GTK +)允许图形应用程序在Linux,Windows和OSX环境中执行而无需更改; 由于与Mono中的Windows Forms兼容的实现尚未完成,因此该建议很重要。

我的应用程序是否需要与Mono和.Net Framework兼容,即可移植?

只要是基于CLI的应用程序,实际上就没有特定的设置。 尽管应注意以下几点:

  1. Linux在文件名和目录名上区分大小写; 因此必须与我们使用的名称保持一致。
  2. Windows()中的路径分隔符与Linux(/)中的分隔符不同,因此建议使用API​​ Path.DirectoryPathSeparator,以在执行应用程序时获取正确的分隔符。
  3. 如果使用非CLI库(例如:C,C ++等库),请使用p / Invoke,确保该库存在于将要执行应用程序的不同环境中。
  4. 不要使用仅在特定环境中存在的技术(例如:Windows上的注册表或Linux -Gnome-上的GConf); 或提供允许应用程序在运行环境中正确运行的解决方案。
  5. 目前,基于Windows窗体且非常复杂的应用程序可能无法运行,因为Mono中的Windows窗体不完整。

Mono中存在哪些开发工具?

那么从Windows可以使用Visual Studio开发应用程序。 在Linux方面, 单开发,基于SharpDevelop的IDE。

MonoDevelop允许项目管理,语法着色,自动完成代码,从同一IDE编译和运行应用程序。
通过添加(加载项),功能已扩展到例如:

  • 从IDE连接到数据库
  • 包含调试器,该调试器允许像Visual Studio一样逐行执行代码并查看变量值。

尽管该设计师专注于为GTK#而不是Windows Forms创建表单,但目前正在集成表单设计器。

Mono的应用程序。

要了解一个想法,Mono中有很多针对Linux开发的应用程序,下面列出了这些应用程序的2个清单:

这些出色的应用包括:

  • MonoDevelop:这是一个用于在Linux中编程Mono程序的IDE。 IDE用C#制成。
  • F-现货:除了能够对照片进行一些数字修改之外,还可以对照片进行分类。
  • 贝格尔:用于在Linux中的许多不同类型的文档之间建立索引并搜索信息的工具。
  • 假小子:用于存储通过关键字链接的注释的程序。
  • ine:这是一个基于GStreamer的音频播放器。
  • PyMusique:该程序提供图形界面,可使用Apple的iTunes服务访问购买音乐。
  • MonoUML:它是使用UML标准制作图表的编辑器。
  • 侏儒:快速有效的应用程序启动器。
  • Docky:桌面基座。
  • 女妖:基于Gstreamer的媒体播放器。

猴子和牌照

Mono是基于发布到ECMA的标准的Microsoft .Net Framework的开源实现; 由于它是基于Microsoft产品的实现,因此在Linux中使用Mono引起了Linux用户和开发人员的争议,理由是Mono可能会侵犯Microsoft的专利,这可能会成为对Monkey的诉讼。

根据 在Mono项目中,只要CLI和C#编译器遵守ECMA接受的标准,相对于Mono特定的库,这两部分都是安全的,并且没有风险; 但是与ASP.NET,ADO.NET和Windows Forms相关的库的实现对侵犯某些Microsoft专利很敏感-尽管目前尚不知道是这种情况- 因此,Mono项目为后一种情况建议了2个选择:

  • 重新实现功能-避免获得专利-尝试保持API兼容。
  • 消除无法重新实现的事情。
  • 寻找可以使专利无效的要素。

根据Wikipedia所述,Mono对那些.NET组件的实现不受 ECMA 因为它的标准化引起了人们对在项目生命周期内可能侵犯软件专利的担忧。 尤其是,有关微软是否可以通过针对侵权专利的诉讼来破坏mono项目的讨论展开了。

目前,关于在开发人员社区中接受和使用Mono的(是否)可取性的辩论非常活跃。 GNU / Linux的。 反对Mono的主要论点是,它并非没有软件专利,并且存在Microsoft要求使用C#/ CLI的许可证的风险。

另一方面,该项目 地精 正在开发另一种语言, 瓦拉,专门为Gnome开发应用程序而创建,但不受Microsoft的潜在威胁。

我的推荐

当前有一些用Mono编写的非常好的程序。 您只能想到F点,Gnome Do或Docky。 但是,有了没有所有这些问题的免费替代产品,我宁愿不要依赖Mono。
关于Debian和Ubuntu最近有争议的决定包括 Mono 在其默认安装中,与Fedora删除它的方式不同,只是通过添加 流行 应用 假小子,用C#编写,Richard Stallman有 几句智慧 那会启发其他发行版。

依靠C#是危险的,因此我们不建议使用它。
这个问题不是Mono独有的,任何免费的C#实现都会有同样的问题。 危险在于,Microsoft可能计划有一天使用(其)软件专利强制所有免费的C#实现。 这是一个严重的危险,只有傻瓜才会忽略它,直到它真正发生的那一天。 我们需要采取预防措施来保护自己。
我们应该尽量减少对自由C#实现的依赖。 换句话说,我们必须劝阻人们不要编写C#程序。 因此,我们不得在默认安装的GNU / Linux发行版中包含C#实现,并且必须尽可能分发和推荐非C#应用程序,而不是可比的C#应用​​程序。

卸载Mono

我想从我的Ubuntu发行版中删除mono(因此,节省了很多依赖项占用的空间,而对于Ubuntu,则只剩下“支持”默认安装的2个应用程序了:F-Spot和假小子)。 如果您不使用这两个中的任何一个,请从Synaptic以及所有表示Mono或CLI的软件包中将其卸载。

要在Ubuntu中卸载Mono,您还可以打开终端并输入:

sudo apt-get remove --purge mono-common libmono0 libgdiplus sudo rm -rf / usr / lib / mono

单声道的替代品

如我们所见,首先,如果您是一名程序员,请不要使用C#进行编程。 还有无数其他语言,甚至更好。 另外,Gnome最近发布了一种新语言,具有非常类似于Mono的功能,称为Vala。
我刚刚删除了Mono,并删除了我最喜欢的一些节目……有哪些替代节目可以代替它们:

更多信息

有关Mono项目的更多信息,请访问官方网站: 英语,除了 独白 这是Mono开发者博客的汇总器; 或在Mono Hispano网站上以西班牙语显示, 博客 维护该站点的人员。
别忘了留下您对Mono的评论……=)


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   Ariel 大卫之星系列

    我认为微软将来不会针对Mono,Monodevelop和Xamarine使用其专利。 而且,我认为这些工具可以使您更轻松地扩展到通常每天在软件开发领域中享有特权的其他平台。 我认为Mono在将C#和.NET技术移植到其他平台方面做得很出色,这使它们在软件方面也充满了新的技术机遇。 Mono知道专利的含义,并且肯定会采取一切预防措施以免受到侵权。 另一方面,JAVA凭借其JAVA EE6平台正处于领导地位,就我的喜好而言,它已经超出了Visual Studio当前提供的功能。 正是由于这个原因,我认为微软会发现将其C#移植到Linux,MacOSX,BSD,Solaris,Android等方面非常方便...另一方面,我不同意这些疯狂的说法。我对Linux中的Microsoft表示反对,或者对Microsoft中的Linux表示反对,我相信真正的演变是多种多样的,拒绝事实是回归。

  2.   让我们使用Linux

    迄今为止,没有任何变化。 如果您对能够在不同系统上运行程序感兴趣,我建议使用Java或python。 如果您对c#语法感到满意,那么vala也是一个不错的选择。
    拥抱! 保罗

  3.   巴勃罗

    嘿。

    不久前,我决定迁移该语言并选择了C#,以便能够使用该代码并将其编译为可在Linux和Windows平台上使用。

    现在,看到这篇文章,我想知道我是否做得很好(我是从Richard Stallman的著作中这样说的)。

    你能告诉我这种情况到目前为止是否有所改变?

    (我知道此职位至少2岁)

  4.   塞尔吉奥

    正如同名人士所说,我认为微软不应限制其扩展能力,实际上,它并不能以此为生。 我看到他们甚至能够自由化语言,因为它们从实现,框架和IDE中获利。

    我开始认为,斯托曼先生今天对这些事情有些老了。 我很高兴阅读您的引用和思考,尽管社区一直关注C#,但Oracle提起了针对Android的第一项诉讼,尽管可怜的堂兄,但不应忘记它是Linux,因为该专利侵犯了Linux。使用... JAVA!

    我的观点是,Linux社区不能单凭骄傲就不愿让自己对替代方案视而不见,而对大量优质开发人员则视而不见,夸大“适应或转身”的座右铭。 孤立地存在死亡,即使它很慢。

    我们不要忘记编程语言与应用程序是一个非常不同的概念,它是一种通用的产品。 谁将能够审查说这是资本主义语言的英语?

    1.    哈维尔·L

      他们谈论MS好像他们不知道其在市场营销方面的变化一样,或者他们已经忘记了99的事件,因为MS修改了JAVA平台的一部分,以便使用自己的套件编写的软件无法在其他浏览器上运行。 IE6引起了全世界的关注,而不是IEXNUMX,但到处都是诉讼,但最重要的是,许多书面软件都必须重新实现。 MS是一家希望通过各种方式获利的公司。 对于那些使用自由软件的人来说,如果有太多免费工具可用,那么使用专有工具并不方便。

    2.    耶尔博奇

      塞尔吉奥,您天真地忘记了艺人不做任何事情,绝对不做任何事,如果他们不首先确保即使在行为发生后仍能产生数百万美元,他们也不做慈善工作,
      外国佬最喜欢这个世界的是毒品和美元(按顺序排列)
      这就是为什么他们以资本主义统治世界和市场:使用棍棒定律和美元定律,即使是假冒伪善者在新教寺庙或教堂里弄糟了他们的胸脯,真正的神灵也是美元。天主教的

      1.    最大交流电

        反微软总是会存在所谓的垄断行为,尽管多年来确实微软表现出对最终用户而言并不令人愉悦的行为,但不要忘了这是一家商业公司,他们将始终对自己的产品做生意。 但是世界已经改变,它已经全球化,微软当时拒绝接受它,但是别无选择,MSOffice中的Open-XML标准集成证明了这一点,它甚至被迫“共享” Net Framework及其语言已在ECMA欧洲机构中注册,该平台受反托拉斯规则的约束并且必须这样做,其目标是标准化信息技术,对于C#,它对应于ECMA-334,用于CLI(它实现了Mono)ECMA-335,而C ++ / CLI是ECMA-372,这确保了这些语言和平台可供公众使用,因此Microsoft将来不会在这些语言。 反微软阻止C#语言使用的尝试是荒谬的,它像微软谴责的游戏一样肮脏,语言规范是开放的,还有其他语言,并且在这个世界上最好的是竞争这将导致所有领域的进步,程序员自己必须发现不同的语言和技术并了解它们的特性,他将是一个可以自己决定要坚持发展自己的人的人。

  5.   让我们使用Linux

    贡献良多。 谢谢!

  6.   阿德里安

    这个史达曼! 在您的床XD下方看到Microsoft同谋。

  7.   塞尔吉奥

    如果考虑到Microsoft希望使用.net来获得Java的优势,那么我认为在Linux中使用实现以截断其可能性实在太好了。

    我的意见是,如果Microsoft对这一点不感兴趣,它将无助于创建这些标准,并且它将保护其.net库以避免(或至少阻止)它们的反编译。 而且,如果我没有记错的话,我们就已经在4.0版本上了,并且所有库都经过了反编译而没有问题,并且仍然没有被混淆,这将提高体系结构的性能。

    的确,即使是最愚蠢的应用程序,Microsoft始终向其收取费用,并且现在在其功能表中,例如.net的完全可用的Visual Studio免费版本,没有许可证限制,并且它不是唯一的选择(Truespace for例子也转到了免费的一边)。

    这是Java和.Net之间的一场战斗,就像在所有战争中一样,任何盟友都是受欢迎的。

    事实是,无论我们是否喜欢,我们都生活在一个充满许可证的世界中……实际上,一些门户网站在一个简单的网页上突出显示了“侵权”的专利,而且它们如此普遍以至于我们甚至都没有考虑过使其获得专利的过程非常简单。 那里有专利,如果有人想破坏您的项目,他们很有可能最终会找到被侵权的专利。

    万一还不清楚,我不打算在这里开始冲突,试图了解Windows或Linux是否更好,它们只是不同而已,每个人都有其优点和缺点,就像其他情况一样。 但这是另一个故事。

    问候。

  8.   e2弗莱彻

    使用Microsoft,您将一无所知。

  9.   肯·托雷尔里巴

    问候,

    前段时间,我遵循了有关Mono的教程(第1章),它比Java看起来超级简单和自然,我喜欢Java。 不幸的是,我无法获得该杂志的下一期。

    据我了解,C#是J ++的发展
    Java的这种有问题的实现使Microsoft向Sun提起了诉讼,Sun赢得了诉讼,因为Microsoft拥有只能在Windows上执行的库(程序包),这与Java座右铭相反。您会看到,无论何时何地都可以执行»。

    Microsoft报废J ++和C#布局

    现在,事实如下:微软“捐赠”了C#的某个部分以使Mono合法,因此这些部分将不会遭受将来的诉讼,但是如果微软有很大的机会要求任何使用它的人,微软都不会捐赠该东西。之所以这样,是因为它曾经与其他软件一起发生过,但是如果Mono开始窃取客户,或者某个公司在该语言的支持和实现下开始(大量)赚钱,或者希望将其归为自己的时候,就会发生这种情况。所以他们只会看到它的发展。

    最后,应该指出的是,Miguel de Izcasa 由于护照原因而无法为微软工作,这让他感到沮丧……,这使得他创建了与 Windows 兼容的软件 desde Linux,让那些人意识到“他们错过了什么”

  10.   uk

    我不喜欢这样

  11.   开发者

    我认为使用GNU / Linux的原因之一是因为它是开源的,如果我们开始使用Microsoft创建的软件,我们会陷入矛盾,这也是为什么当社区中有一个庞大的社区时,您需要Microsoft软件的原因。相互支持的开源世界(开源的起源),从而改善了任何非开源应用程序,您不觉得吗?

    让我们记住,.NET最初不是免费的,如果它发布了它(发布的部分),那是因为由于应用程序有限,开发人员没有使用它,并且Microsoft失去了所有开发人员的存在。

    如果我们希望我们的应用程序在不同平台上运行,那么为什么不使用Java或Python。 Xamarin为iOS或android开发而开发的新应用程序仅是一种#语言独占开发的方法,因为众所周知,使用本地语言总是更好。

    关于Richard Stallman,我认为他是开放源代码方面经验最丰富的人,因此,至少我们必须停止分析他所面临的问题,因为了解历史可以避免犯同样的错误。

    像其他所有人一样,开发人员必须支付账单(食品,健康等),因此我们需要为自己的工作获得经济利益,但是幸运的是,我们有不同的获取方式,例如捐赠,咨询,发展基于开源等我们必须利用我们的技能和独创性,因为这个新世界“改变”了它的运作方式,这要归功于每个现有的开发人员,他们使一切正常运转。 从我的角度来看,我们是新技术和新社会的基础,而不是公司。

    不要相信它???

  12.   阿德里安·费尔南德斯(Adrian Fernandez)

    我认为M $对于捕获那些违反C#专利的人没有任何帮助。 他以前没有做过,今天没有做过,因此他几乎不会在不久的将来这样做。 另一方面,Stallman以其对非自由软件的持续偏执着称(他甚至对Linux内核不满意),想象了20年,一个被M $迫害的开发者世界。
    无论如何。 Monodevelop是一个很好的工具。 而且,如果有人害怕从您所看到的内容使用C#,那么仍然可以使用Basic,它在大多数开发中都可以像C#一样强大。

  13.   丹尼尔·诺列加(Daniel Noriega)

    好吧,我也同意一些意见,我是一名电子工程师,但我始终了解编程新闻,并且总是尝试全面学习一种语言。 对我来说真正困难的是尝试选择要学习的语言,我使用C ++,但是我不了解API,因此几乎没有什么,这就是为什么我尝试查看要关注的API。 但是我想要的是开发跨平台代码的可能性,而且显而易见的第一件事就是JDK或.Net。

    然后我看到了这篇文章,老实说,我有太多的偏执狂。 我认为微软不会提起诉讼,相反,微软获得了优势,因此它的语言通过成为一种可以扩展到其他平台的语言而在程序员中占有一席之地。 我是Linux用户,但我也是Windows用户,我喜欢Linux,但是如果我对Linux不支持一件事,那就是社区中的很大一部分人感到自豪和愚蠢,每天都在为废话而奋斗,侮辱和贬低他们所认识的人。

  14.   何塞·曼努埃尔·阿尔卡拉斯

    当然,不要将自己专用于占卜……您已将其钉牢…….net现在是开源的……xD

  15.   亚历克西斯

    嗯,就像我说过很多次……我对理查德·斯托曼(Richard Stallman)感到很讨厌……他表达了自己的见解,而狂热的男孩们跳起了脚步,仿佛他的话是神圣的诫命……尽管微软将来可以利用其专利,同样(至少在我居住的地方),企业级的主要平台是.NET和Java。因此,学习处理Mono将最终使作为开发人员的职业受益。 Linux世界粉碎与Stallman先生的“理想”不同的替代方案不是很健康,我个人使用Mono进行实验和学习(因为我什至没有在PC上安装Windows,但是我不能强加于Windows) (我的工作岗位上)。我不觉得自己是一个罪人,哈哈哈哈的问候。

  16.   OU

    我真的不在乎C#是危险的,还是其他语言是开放的,等等,只要它适用于任何操作系统并且可以盈利并且可以赚钱,这很好,我目前是使用该语言的Linux对虾程序员Basic与Windows Visual Basic类似,如果我发现它可以简化简单,专业的编程并将其扩展到许多平台,欢迎您。

  17.   恐怖

    先生们,由于微软已经在2016年收购了Xamarin,Mono还有很长的路要走。 停止便宜的狂热,开始从事其他编程选择。 自2014年以来(随着DotNet Foundation的创建),. NET一直可以在非Windows平台上正式移植,并且.NET在非Windows环境中的实现逐渐增长。 您不仅像以前一样考虑Internet Information Services或Windows服务器的那些问题,而且还必须考虑带有.NET的Apache Web Server / Nginx。 以我为例:我已经在IIS上设计了ASP.NET MVC 4/5应用程序,然后在Linux Ubuntu上的Apache Web服务器上设计了大约一年,到目前为止,我在两个平台上运行ASP.NET MVC应用程序都没有问题。不同的网络平台。

    如果您有兴趣将ASP.NET MVC应用程序迁移到Apache / Ubuntu,这是我的贡献:

    1:
    https://radioterrormexico.wordpress.com/2016/06/22/ejecutar-aplicaciones-asp-net-en-plataformas-no-windows-parte-13/

    2:
    https://radioterrormexico.wordpress.com/2016/06/23/ejecutar-aplicaciones-asp-net-linux-ubuntu-server-parte-23/

    示例Github:
    https://github.com/boraolim/MonoServe-2016

  18.   赫克托

    这场辩论有强烈的政治色彩... haha​​haaaa XD

  19.   德国人A. COPERTINO

    使用Java也会发生同样的事情,如果Oracle满意的话,它将使Java PAYABLE及其属性成为现实,我们都可以听到。 这是非常主观的。 而且我不认为公司或Linux本身会鼓励这种类型的开发,如果将来这种开发对用户造成问题的话。

  20.   埃尔维诺失踪了

    在全球化和非全球化时代,最好记住一些垄断行为
    或操纵行为,并非一无是处Novel收购了Ximian,而是阅读
    Mysql / Sun Microsystm发生了什么,然后Oracle吸取Sun并使用Mysql使其消失
    Monty(Mysql的创建者)花了一段时间才意识到这一点,但他重新开发了自己的项目并生下了MariaDB,最终在Oracle中陷入了痛苦
    但是Mono也会发生同样的情况。
    我是Cobol,C,Java和Harbor Networking多语言程序员,并且在Aix,Linux和Windows下按顺序排列
    我通过Socket混合应用程序,在银行的不同语言和不同平台之间交流应用程序

    我认为,如果项目很大,即它将包含数千行代码,则必须安全运行以确保其增长/修改和可伸缩性
    现在,如果代码很少,那么在C#下执行它就没有问题,如果它很好,功能强大并且确实为我解决了问题,那就很好了。
    问候

  21.   斯密蒂

    .Net Core + C#=未来

  22.   耶稣阿塞

    直到出现“如果您是程序员,请不要使用C#”之前,注释是正确的……那时,他们失去了所有信誉。

  23.   贾菲特·格拉纳多斯(Jafet Granados)

    在2020年,已经证明这篇文章中所说的一切都没有发生。 Microsoft创建了.NET Core并将其免费提供。 现在,有了3个平台,它们的基础库非常相似,但最终却有所不同(因为它们是从头开始创建的),下一步是将这三个平台统一为一个,这就是.NET 5所做的工作(不用这个词)据说,“ Core”或“ Framework”是一个新平台,但现在是跨平台的开放源代码,可用于开发Web应用程序,桌面应用程序,移动应用程序,IoT,AI,云等。 。 得益于.NET现在是开源的事实,大量的开发人员做出了贡献,从而实现了这种发展。 之所以会发生这种情况,是因为随着越来越多的公司和开发人员以开放方式使用.NET,Microsoft开启了销售其服务(主要在云中)的可能性,这些服务也不限于使用.NET或C#。 微软并不愚蠢,关闭他们的软件并提起诉讼对他们来说是危险的事情。 但是,我还没有嫁给.NET或任何其他语言。 但是我看到在所述社区中正在做的事情非常有趣。 在大公司的支持下,自由社区可以更快地成长,尤其是因为有了.NET Foundation,该基金会负责审查.NET中的现有开放源代码项目,该项目保证了订单,流程的进行。由Microsoft自行调试,用于审查上述项目。