提供基于角色的应用体验的制作方法

文档序号:6442370阅读:166来源:国知局
专利名称:提供基于角色的应用体验的制作方法
技术领域
本发明涉及提供基于角色的应用体验。
背景技术
一些计算设备是能够用于多种目的和多个位置的移动设备。例如,雇员可能携带膝上型计算机。膝上型计算机的移动性和灵活性可以允许雇员在办公室、在家、在咖啡店或其他位置处执行与工作相关的职能并且解决个人计算需求。然而,雇员的职业可能要求雇员通过安全的工作网络来访问业务关键数据。结果,雇主可能担心这样的业务关键数据和工作网络的安全性。按常规而言,雇主可以向雇员分配工作膝上型计算机,并且限制仅仅通过工作膝上型计算机来访问业务关键数据和工作网络。雇主还可以限制对与工作无关的个人应用的访问。结果,雇员可能被迫携带单独的膝上型计算机来解决个人计算需求。尤其是对于具有多个设备(例如膝上型计算机、智能电话、平板计算机等等)的用户而言,为了满足多种目的而携带和维护多个计算设备的这样的实践可能是显著麻烦和高成本的。此处所做出的本发明正是对于这些和其他考虑事项而提出的。

发明内容
在此描述了用于提供基于角色的应用体验的技术。应用虚拟化提供在计算机上不进行任何安装的情况下向该计算机递送具有自己的一组配置的应用的能力。该应用可以通过具有自己的虚拟文件系统、配置文件等的虚拟环境来运行在该计算机上。通过这种方式, 该应用可以与其他应用隔离地运行,由此避免在传统上所安装的软件应用中存在的应用冲关。通过充分利用应用虚拟化的功能,虚拟化应用可以用选自多个角色包的合适角色包来调整。所述角色包可以包括角色专用的用户设定、角色专用的应用存储设定、以及角色专用的应用状态设定。合适的角色包可以基于请求执行虚拟化应用的用户的当前角色来选择。通过用所选角色包来调整虚拟化应用,虚拟化应用可以根据用户的当前角色来定制。例如,用户的角色可以包括工作角色、社区积极分子角色、学生角色、家庭角色等等。在一些示例性技术中,具有存储器和处理器的计算机被配置为提供基于角色的应用体验。该计算机从虚拟化客户端接收针对角色包的位置的查询。在接收到该查询以后, 该计算机确定请求执行虚拟化应用的用户的当前角色。该计算机确定与用户的当前角色相对应的角色包的位置。该计算机响应于该查询将角色包的位置传送给虚拟化客户端。虚拟化客户端可以被配置为执行适用于角色包的虚拟化应用。应该了解,上文所描述的主题还可以被实现为计算机控制的装置、计算机进程、计算系统或诸如计算机可读存储介质之类的制品。通过阅读下面的详细描述并审阅相关联的附图,这些及各种其他特征将变得显而易见。提供本发明内容以便以简化的形式介绍将在以下具体实施方式
中进一步描述的一些概念。本发明内容并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在将本概述用来限制所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本发明的任一部分中提及的任何或所有缺点的实现。


图I是示出了根据一些实施例的用于提供基于角色的应用体验的网络架构的框图;图2是示出根据一些实施例的用于提供基于角色的应用体验的方法的流程图;图3是示出用于能够实现此处所提出的各实施例的计算系统的说明性计算机硬件架构的计算架构图。
具体实施例方式下面的具体描述针对用于提供基于角色的应用体验的技术。虚拟化应用可以包括应用层和虚拟化层。虚拟化层可以提供底层执行环境的抽象。虚拟化层可以提供应用层在里面操作的隔离虚拟环境。虚拟环境可以包括虚拟文件系统、虚拟注册表和/或类似物。通过利用在此所提出的技术和概念,虚拟化层可适于基于合适的角色包来定制虚拟化应用。当用户请求执行虚拟化应用时,虚拟化层可以查询角色提供者,该提供者从多个角色中确定用户的当前角色。然后,角色提供者可以选择对应于当前角色的角色配置。在选择角色配置以后,角色提供者可以从所选角色配置中检索合适角色包的位置。然后,角色提供者可以向虚拟化层提供合适角色包的位置。虚拟化层可以访问该位置处的角色包,并且根据角色包定制虚拟化应用。通过这种方式,可以向用户提供基于角色的应用体验。合适的角色包可以包括角色专用的用户设定、角色专用的应用存储设定、以及角色专用的应用状态设定。尽管在结合计算机系统上的操作系统和应用程序的执行而执行的程序模块的一般上下文中呈现了此处描述的主题,但是本领域技术人员将认识到,其他实现可以结合其他类型的程序模块来执行。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其它类型的结构。此外,本领域技术人员将明白,可以利用其他计算机系统配置来实施此处描述的主题,这些计算机系统配置包括手持式设备、多处理器系统、基于微处理器的或可编程消费电子产品、小型计算机、大型计算机等等。在以下详细描述中,将参考构成本发明的一部分并作为说明来示出的附图、各具体实施方式
、或示例。在若干附图的范围内,相同的附图标记表示相同的元素,现在将参考附图来描述用于提供基于角色的应用体验的计算系统和方法。具体而言,图I示出了根据一些实施例的用于提供基于角色的应用体验的网络架构100。网络架构100可以包括客户端计算机102、应用虚拟化服务器计算机104、角色服务器计算机106、以及数据存储108。客户端计算机102、应用虚拟化服务器计算机104、角色服务器计算机106、以及数据存储108 可以通过通信网络110被耦合。通信网络110的示例可以包括局域网(“LAN”)、广域网 (“WAN”)以及因特网。客户端计算机102可以包括虚拟化客户端112。应用虚拟化服务器计算机104可以包括定序器(sequencer)模块114和部署模块116。角色服务器计算机106可以包括角色提供者118和配置管理器120。在其他实施例中,角色服务器计算机106和/或数据存储 108中的一个或多个组件可以本地地包含在客户端计算机102内。客户端计算机102可以被配置为提供一个或多个虚拟化应用,比如虚拟化应用 122。一般而言,应用虚拟化是指使传统上所安装的应用在不必在客户端计算机上安装该应用的情况下对该客户端计算机可用的各种技术。在应用虚拟化中,虚拟化应用可以按照需求被流式传输给客户端计算机。每个虚拟化的应用都可以在客户端计算机上运行其自己的自包含虚拟环境。也就是说,每个虚拟化应用都可以彼此隔离,以及同底层操作系统隔离。 结果,应用虚拟化可以减少应用冲突,集中和简化应用打补丁和升级,并且加快新应用和升级的部署。在一些说明性的实施方式中,定序器模块114可以将传统上安装的应用(之后称为“传统应用”)124虚拟化成虚拟化应用122。于是,定序器模块114可以向部署模块116 提供虚拟化应用122。部署模块116可以按照需求将虚拟化应用122流式传输给客户端计算机102。例如,用户可以通过在客户端计算机102所提供的图形用户界面(“⑶I”)上选中与虚拟化应用122相对应的图标来请求执行虚拟化应用122。虚拟化客户端122可以接收虚拟化应用122以供客户端计算机102执行。应当理解,本领域技术人员可以构思其他合适的技术以用于生成虚拟化应用122和/或向客户端计算机102部署虚拟化应用122。虚拟化应用122可以包括应用层126和虚拟化层128。应用层126可以包含能够提供虚拟化应用122的各个应用相关任务的程序代码其他合适数据。虚拟化层128可以提供和管理客户端计算机102在里面执行应用层126的底层虚拟环境。例如,虚拟环境可以包括虚拟文件系统、虚拟注册表和/或类似物。当建立虚拟环境时,虚拟化层128可以向角色提供者118查询与用户的当前角色相关联的合适角色包的位置。在接收到该查询以后,角色提供者118可以确定用户的当前角色并且选择与用户的当前角色相对应的角色配置。角色提供者118可以包括第一角色配置130A、第二角色配置130B、以及第N角色配置130N。角色配置130A-130N可以统称为角色配置130。在其他实施例中,角色配置130A-130N可以存储在远程数据存储(未示出)中并且由角色提供者118通过网络110来检索。在各个实施例中,角色提供者118可以确定用户的当前角色并且基于角色标识信息从角色配置130中选择相应的角色配置。角色配置130可以由用户、管理员和/或其他人员通过配置管理器120来指定。根据一些实施例,还可以限制对配置管理器120的访问。 例如,配置管理器120可以将访问限于仅仅选择管理员,由此允许企业防止雇员修改角色配置130。角色标识信息的一些示例可以包括用户的所建立的凭证、用户的位置、一天中的时间、用户的计算机网络、用户姿势和/或用户偏好或配置。所建立的凭证可以包括标识出用户的某种形式的标识。在这种情况下,角色提供者118可以选择与所标识出的用户相对应的角色配置。用户的身份可以由用户来提交(例如通过用户名和口令)或者通过其他合适手段(例如与客户端计算机102相关联的介质访问控制(“MAC”)地址)来确定。在这种情况下,角色提供者118可以选择与用户的身份相对应的角色配置。用户的身份可以指用户在其请求执行虚拟化应用122时所处的位置。用户的位置可以基于因特网协议(“IP”)地址、全球定位系统(“GPS”)坐标、或者其他合适的位置确定技术来确定。在这种情况下,角色提供者118可以选择与用户的位置相对应的角色配置。一天中的时间可以指用户请求执行虚拟化应用122时的当前时间。在这种情况下,角色提供者118可以选择与一天中的时间相对应的角色配置。计算机网络可以指客户端102所连接到的当前计算机网络。计算机网络可以由IP地址或与客户端计算机102相关联的其他合适网络相关信息来确定。例如,通过标识出计算机网络,角色提供者118可以确定用户是在家、在工作、还是其他某个位置。在这种情况下,角色提供者118可以选择与用户的计算机网络相对应的角色配置。用户姿势可以指特定的用户动作。在这种情况下,角色提供者118可以基于用户的特定动作来选择或推断角色配置。例如,如果用户打开特定的文档,则角色提供者118可以推断出与该文档的类型和/或内容相对应的角色配置。用户偏好可以指与角色配置的选择有关的用户定义的偏好和/或配置。在这种情况下,角色提供者118可以基于用户偏好或配置来选择角色配置。例如,用户可以将每个角色配置与各种标准相关联,包括之前所述的标准、比如用户的位置、一天中的时间、用户的计算机网络、用户姿势和/或类似物。这样的用户偏好可以与管理员的配置分开地或相结合地运行。每个角色配置130都可以包含相应角色包在数据存储108中的位置。数据存储108 可以是数据库或其它数据存储机制。数据存储108可以包括第一角色包132A、第二角色包 132B、以及第N角色包132N。例如,第一角色包132可以对应于第一角色配置130A。第二角色包132B可以对应于第二角色配置130B。第N角色包132N可以对应于第N角色配置 130N。角色包132A-132N可以统称为角色包132。当角色提供者118确定用户的当前位置并且基于角色标识信息选择角色配置时,角色提供者118可以从所选角色配置中检索相应角色包的位置。然后,角色提供者118可以响应于该查询向虚拟化层128提供该角色包的位置。在接收到角色包的位置以后,虚拟化层128可以从数据存储108中访问该位置处的角色包。然后,虚拟化层128可以根据角色包调整虚拟化应用122的执行,由此向用户提供基于角色的应用体验。具体而言,虚拟化层128可以访问包含在角色包中的用户设定、应用存储、以及应用状态。例如,第一角色包132A可以包括第一角色包132A专用的相关联的用户设定134A、应用存储设定136A、以及应用状态设定138A。第二角色包132B可以包括第二角色包132B专用的相关联的用户设定134B、应用存储设定136B、以及应用状态设定 138B。第N角色包132N可以包括第N角色包132N专用的相关联的用户设定134N、应用存储设定136N、以及应用状态设定138N。用户设定134A-134N可以统称为用户设定134。应用存储设定136A-136N可以统称为应用存储设定136。应用状态设定138A-138N可以统称为应用状态设定138。用户设定134可以定义虚拟化应用122的用户专用设定。在一个实施例中,用户可以通过选中某个主题、某些图标以及某些工具栏来定制虚拟化应用122的GUI。在另一示例中,用户可以定制虚拟化应用122的安全设定。应用存储设定136可以定义本地和/或远程应用存储的位置,其中从该位置处可以检索应用数据并且在该位置处可以存储应用数据。例如,如果虚拟化应用122是文字处理应用,则应用存储可以存储通过虚拟化应用122 所创建的文档。应用状态设定138可以定义虚拟化应用122在被关闭以前的最近状态。例如,如果虚拟化应用122是文字处理应用,则应用状态可以包括由虚拟化应用122所访问的最近文档的列表、以及被插入到该文档中的最近符号的列表。现在将参考图2来描述关于虚拟化客户端112和角色提供者118的操作的附加细节。具体而言,图2是示出根据一些实施例的用于提供基于角色的应用体验的方法的流程图。应理解,此处所述的逻辑操作被实现为(I) 一系列计算机实现的动作或运行于计算系统上的程序模块,和/或(2)计算系统内的互连的机器逻辑电路或电路模块。取决于计算系统的性能及其他要求,可以选择不同的实现。因此,此处描述的逻辑操作被不同地称为状态操作、结构设备、动作或模块。这些操作、结构设备、动作和模块可以用软件、固件、专用数字逻辑,以及其任何组合来实现。应该理解,可以执行比附图中示出的和此处所描述的操作更多或更少的操作。这些操作还可以按与此处所描述的不同的次序来执行。在图2中,例程200始于操作202,在操作202,虚拟化层128向角色提供者118发送针对合适角色包的查询。虚拟化层128可以在用户请求执行虚拟化应用122时发送该查询。然后,流程200前进到操作204,在操作204,角色提供者118从虚拟化层128接收针对合适角色包的查询。当角色提供者118从虚拟化层128接收到针对合适角色包的查询时, 例程200前进到操作206。在操作206,角色提供者118确定请求执行虚拟化应用122的用户的当前角色。角色提供者118可以基于合适的角色标识信息来确定用户的当前角色。角色标识信息的一些示例可以包括用户的所建立的凭证、用户的位置、一天中的时间、用户的计算机网络、用户姿势和/或用户偏好或用户配置。当角色提供者确定请求执行虚拟化应用122的用户的当前角色时,例程200前进到操作208。在操作208,角色提供者118确定合适角色包的位置。角色提供者118可以从多个角色配置130中标识出和用户的当前角色相对应的角色配置。在一说明性示例中,角色提供者118可以标识出与用户的当前角色相对应的第一角色配置130A。角色提供者118可以检索第一角色包132A的包含在第一角色配置130A中的位置。当角色提供者118确定合适角色包的位置时,例程200前进到操作210。在操作210,角色提供者118可以响应于该查询向虚拟化层128传送该合适角色包的位置。在该说明性的示例汇总,角色提供者118可以将第一角色包132A的位置传送给虚拟化层128。然后,例程200前进到操作212,在操作212,虚拟化层128接收该合适角色包的位置。当虚拟化层128接收到合适角色包的位置时,例程200前进到操作214。在操作214,虚拟化层128访问数据存储108中该位置处的角色包。具体而言,虚拟化层128可以访问包含在合适角色包中的用户设定、应用存储设定、以及应用状态设定。 在说明性的示例中,虚拟化层128可以访问包含在第一角色包132A中的用户设定134A、应用存储设定136A、以及应用状态设定128A。当虚拟化层128访问数据存储108中该位置处的角色包时,例程200前进到操作218。在操作218,虚拟化层128执行适用于所访问的用户设定、应用存储设定和应用状态设定的虚拟化应用122。在该说明性示例中,虚拟化层128可以执行适用于所访问的用户设定134A、应用存储设定136A和应用状态设定138A的虚拟化应用122。通过这种方式,虚拟化应用122的执行可以根据用户的当前角色来定制。当虚拟化层128执行适用于所访问的用户设定、应用存储设定以及应用状态设定的虚拟化应用122时,例程200可以要么重复 (例如周期性地、连续地或者需要时按照需求)要么终止。
现在转向3,示出了展示出计算机300的示例计算机架构图。计算机300的示例可以包括客户端计算机102、应用虚拟化服务器计算机104和角色服务器计算机106。计算机300可以包括中央处理单元302、系统存储器304、以及将存储器304耦合到302的系统总线306。计算机300还可以包括用于存储一个或多个程序模块314和数据存储316的大容量存储设备312。程序模块314的示例可以包括虚拟化客户端112、定序器模块114、部署模块116、角色提供者118、以及配置管理器120。数据存储316的示例可以包括数据存储108。大容量存储设备312可以通过连接到总线306的大容量存储控制器(未示出)来连接到处理单元302。大容量存储设备312以及其相关联的计算机存储介质可以为计算机 300提供非易失性存储。虽然此处包含的计算机存储介质的描述引用了诸如硬盘或CD-ROM 驱动器之类的大容量存储设备,但是本领域技术人员应该了解,计算机存储介质可以是可由计算机300访问的任何可用的计算机存储介质。作为示例而非限制,计算机存储介质可以包括以用于非瞬时地存储诸如计算机存储指令、数据结构、程序模块或其他数据之类的信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。例如,计算机存储介质包括,但不仅限于,RAM、R0M、EPR0M、 EEPR0M、闪存或其他固态存储器技术,⑶-ROM、数字多功能盘(“DVD”)、HD_DVD、蓝光或其他光学存储,磁带盒、磁带、磁盘存储器或其他磁存储设备,或可以用来存储所需信息并可由计算机300访问的任何其他介质。根据各实施例,计算机300可以在使用通过诸如网络110之类的网络到远程计算机的逻辑连接的联网环境中操作。计算机300可以通过连接至总线306的网络接口单元 310来连接到网络110。应当理解,网络接口单元310还可以被用来连接到其他类型的网络和远程计算机系统。计算机300还可以包括用于接收和处理来自包括键盘、鼠标、话筒以及游戏控制器的多个输入设备(未不出)的输入的输入/输出控制器308。类似地,输入/输出控制器308也可以向显示器或其他类型的输出设备(未示出)提供输出。总线306可以使处理单元302能够从大容量存储设备312或其他计算机存储介质读取或向其写入代码和/或数据。计算机存储介质可以表示使用任何合适的技术来实现的存储元件形式的装置,这些技术包括但不限于,半导体、磁性材料、光学等等。计算机存储介质可以表示存储器组件,而无论是被表征为RAM、R0M、闪存还是其他类型的技术。计算机存储介质还可以表示次级存储,无论是被实现成硬盘驱动器还是以其他方式来实现。硬盘驱动器实现可以被表征为固态,或者可以包括存储磁编码信息的旋转介质。程序模块314可以包括软件指令,这些指令在被加载到处理单元302中并被执行时致使计算机300提供基于角色的应用体验。程序模块314还可以提供计算机300可以使用在整个本说明书中所讨论的组件、流程以及数据结构来参与到整个系统或操作环境内的各种工具或技术。例如,程序模块314可以实现用于提供基于角色的应用体验的接口。一般而言,程序模块314在被加载到处理单元302中并被执行时,可以将处理单元 302和整个计算机300从通用计算系统变换成被定制为生成提供基于角色的应用体验的专用计算系统。处理单元302可以用任意数量的晶体管或其他分立电路元件(它们可以单独或共同采取任意数量的状态)来构造。更具体而言,处理单元302可以响应于程序模块314 中所包含的可执行指令,作为有限状态机来操作。这些计算机可执行指令可以通过指定处理单元302如何在各状态之间进行转换来变换处理单元302,由此变换构成处理单元302的晶体管或其他分立硬件元件。对程序模块314进行编码还可以变换计算机存储介质的物理结构。在本说明书的不同实现中,物理结构的具体变换可取决于各种因素。这些因素的示例包括但不限于用于实现计算机存储介质的技术、计算机存储介质被表征为主存储还是次级存储等等。例如, 如果计算机存储介质被实现为基于半导体的存储器,则当在其中编码软件时,程序模块314 可以变换半导体存储器的物理状态。例如,程序模块314可以变换构成半导体存储器的晶体管、电容器或其他分立电路元件的状态。作为另一示例,计算机存储介质可以使用磁性或光学技术来实现。在这样的实现中,程序模块314可以在该软件在磁性或光学介质中编码时变换该磁性或光学介质的物理状态。这些变换可以包括改变给定磁性介质内的特定位置的磁性。这些变换还可以包括改变给定光学介质内的特定位置的物理特征或特性,以改变这些位置的光学特性。在没有偏离本说明书的范围的情况下,物理介质的其他变换也是可能的,前面提供的示例只是为了便于这一讨论。基于前面的描述,应当理解,此处提出了用于提供基于角色的应用体验的技术。虽然以计算机结构特征、方法动作、以及计算机可读介质专用的语言描述了本文呈现的主题, 但是应该理解,在所附权利要求书中所限定的本发明不一定仅限于本文描述的具体特征、 动作、或介质。相反,这些具体特征、动作和介质是作为实现权利要求的示例形式来公开的。上述主题仅作为说明提供,并且不应被解释为限制。可对此处所述的主题作出各种修改和改变,而不必遵循所示和所述的示例实施例和应用,且不背离所附权利要求书中所述的本发明的真正精神和范围。
权利要求
1.一种用于提供基于角色的应用体验的计算机实现的方法,该方法包括执行计算机实现的操作,所述操作用于通过具有处理器(302)和存储器(304)的计算机(300)从虚拟化客户端(122)接收针对角色包(132)的位置的查询;在接收到该查询以后通过计算机(300)确定请求执行虚拟化应用(122)的用户的当前角色;通过计算机(300)确定与该用户的当前角色相对应的角色包(132)的位置;以及通过计算机(300)、响应于该查询向虚拟化客户端(122)发送角色包(132)的位置,虚拟化客户端(122)被配置为执行适用于角色包(132)的虚拟化应用(122)。
2.如权利要求I所述的计算机实现的方法,其特征在于,确定与该用户的当前角色相对应的角色包的位置包括通过该计算机、基于与该用户相关联的角色标识信息来选择角色包。
3.如权利要求2所述的计算机实现的方法,其特征在于,基于与该用户相关联的角色标识信息来选择角色包包括通过该计算机、基于与该用户相关联的所建立的凭证来选择角色包。
4.如权利要求2所述的计算机实现的方法,其特征在于,基于与该用户相关联的角色标识信息来选择角色包包括通过该计算机、基于该用户的当前角色来选择角色包。
5.如权利要求2所述的计算机实现的方法,其特征在于,基于与该用户相关联的角色标识信息来选择角色包包括基于该用户请求执行虚拟化应用时的一天中的时间来选择角色包。
6.如权利要求2所述的计算机实现的方法,其特征在于,基于与该用户相关联的角色标识信息来选择角色包包括通过该计算机、基于发送该查询的客户端计算机的计算机网络来选择角色包。
7.如权利要求2所述的计算机实现的方法,其特征在于,基于与该用户相关联的角色标识信息来选择角色包包括通过该计算机、基于用户偏好或配置来选择角色包。
8.如权利要求2所述的计算机实现的方法,其特征在于,基于与该用户相关联的角色标识信息来选择角色包包括通过该计算机、基于用户姿势来选择角色包。
9.一种应用虚拟化系统,包括角色提供者(118),该角色提供者(118)被配置为通过如下方式提供基于角色的应用体验从虚拟化客户端(122)接收针对角色包(132)的位置的查询,该角色包(132)包括用户设定(134)、应用存储设定(136)、以及应用状态设定(138)中的一个或多个;在接收到该查询以后,从请求执行虚拟化应用(122)的用户的多个角色中确定当前角色;确定与该用户的当前角色相对应的角色包(132)的位置;以及响应于该查询将角色包(132)的位置传送给虚拟化客户端(122)。
10.如权利要求9所述的应用虚拟化系统,其特征在于,还包括虚拟化客户端,该虚拟化客户端被配置为通过如下方式提供基于角色的应用体验将针对角色包的位置的查询发送给该角色提供者;响应于该查询接收角色包的位置;访问该位置处的设定、应用存储设定、以及应用状态设定;以及执行适用于所述用户设定、所述应用存储设定、以及所述应用状态设定的虚拟化应用。
全文摘要
本发明涉及提供基于角色的应用体验。在此描述了用于提供基于角色的应用体验的技术。从虚拟化客户端接收针对角色包的位置的查询。当接收到该查询时,确定请求执行虚拟化应用的用户的当前角色。确定与该用户的当前角色相对应的角色包的位置。响应于该查询将角色包的位置传送给虚拟化客户端。虚拟化客户端被配置为执行适用于角色包的虚拟化应用。
文档编号G06F9/455GK102591700SQ20111043101
公开日2012年7月18日 申请日期2011年12月20日 优先权日2010年12月21日
发明者A·M·安德森, A·沙尔东, D·C·伯格, D·K·帕伊, G·C·亨特, K·H·雷厄森 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1