[发明专利]根据模式的命令行外壳命令生成有效
| 申请号: | 201110150687.3 | 申请日: | 2011-05-26 |
| 公开(公告)号: | CN102289367A | 公开(公告)日: | 2011-12-21 |
| 发明(设计)人: | J·卡列夫;E·杨;N·A·卡梅达 | 申请(专利权)人: | 微软公司 |
| 主分类号: | G06F9/44 | 分类号: | G06F9/44 |
| 代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 杨洁 |
| 地址: | 美国华*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 根据 模式 命令行 外壳 命令 生成 | ||
技术领域
本发明涉及代码生成工具,尤其涉及根据模式的命令行外壳命令生成。
背景技术
命令外壳是支持操作系统内的一些基本命令的常规命令行解释器。在一些情况下,可提供单独的控制台应用程序,以被从这些外壳中调用。它们也可包括脚本语言(批处理文件),其可用来自动执行各种任务。然而,它们不是旨在自动化操作系统的图像用户界面(GUI)功能的所有方面,这部分是由于通过该图像界面展示的操作的命令行等效物是有限的,而且脚本语言通常是初级的并且不允许创建复杂脚本。
结构化文档,例如可扩展标记语言(XML)文档在计算中普遍使用。XML模式文档或XSD是以XML模式语言编写的文档。XSD可用来表达这样一组规则,XML文档必须遵守以便依照这一模式被视为有效。但是,不像其他模式语言,依照XSD确定文件的有效性会产生依附于特定数据类型的信息集。命令外壳命令(也被称为”cmdlet”)可能不足以修改由XSD模式定义的数据,尤其是当模式数量众多时。
发明内容
提供本发明内容是为了以简化的形式介绍将在以下具体实施方式中进一步描述的一些概念。本发明内容并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
各实施例涉及一种代码生成工具,其能够在编译时从诸如XSD模式的一模式中创建命令外壳命令或“cmdlet”。也可在运行时生成cmdlet。代码生成器可生成类,以表示由模式定义的数据,且命令外壳生成代码可使用类的知识来生成合适的命令外壳类以操作数据。根据其他实施例,在优化由代码生成工具生成的类模型之后,可插入插件。插件可修改模型,插入它们自己的代码,或者禁止代码生成并从模型中生成它们自己的代码。
通过阅读下面的具体实施方式并参考相关联的图形,这些及其他特点和优点将变得显而易见。可以理解,前述一般描述和以下具体实施方式均仅是说明性的,且不限制所要求保护的各方面。
附图说明
图1是示出在根据各实施例的系统中如何由管理者通过应用程序编程接口(API)来操作依照一模式的数据的概念图。
图2是示出根据各实施例的系统中的主要组件和交互的另一概念图。
图3是示出根据各实施例的系统中的步骤流程的方框图。
图4是其中可实现根据各实施例的系统的联网环境。
图5是其中可实现各实施例的示例计算操作环境的框图;以及
图6示出根据各实施例的从XSD模式自动生成命令外壳命令的过程的逻辑流程图。
具体实施方式
如上概述,可从诸如XSD的模式中自动生成命令外壳命令(cmdlet)以允许用户操作根据该模式结构化了的数据。代码生成器可生成类,以表示由该模式定义的数据,且命令外壳生成代码可使用类的知识来生成合适的命令外壳类,以操作数据。可使用引用普通模型的插件来生成任何类型的代码,而不需要解析这些模式。在以下详细描述中,参考了构成了详细描述的一部分的附图,其中以图解的方式示出了具体实施方式或示例。可组合些方面,可利用其他方面,并且可以做出结构上的改变而不背离本发明的精神或范围。因此,以下具体实施方式并不旨在限制,并且本发明的范围由所附权利要求及其等效方案来限定。
虽然在结合在个人计算机上的操作系统上运行的应用程序执行的程序模块的一般上下文中描述了各实施方式,但是本领域技术人员会认识到各方面也可以结合其他程序模块实现。
一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。此外,如本领域技术人员理解的,各实施例可以用其他计算机系统配置来实施,包括手持式设备、多处理器系统、基于微处理器或可编程消费者电子产品、小型计算机、大型计算机以及类似计算设备。各实施方式还能在任务由通过通信网络链接的远程处理设备来执行的分布式计算环境中实现。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。
各实施例可被实现为计算机实现的过程(方法)、计算系统、或者如计算机程序产品或计算机可读介质等制品。计算机程序产品可以是计算机系统可读并且编码包括用于使得计算机或计算系统执行示例过程的指令的计算机程序的计算机存储介质。例如,计算机可读存储介质可经由易失性计算机存储器、非易失性存储器、硬盘驱动器、闪存驱动器、软盘或紧致盘和类似介质中的一个或多个来实现。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110150687.3/2.html,转载请声明来源钻瓜专利网。





