设定软件功能启用或停用的方法

文档序号:6462716阅读:324来源:国知局
专利名称:设定软件功能启用或停用的方法
技术领域
本发明是有关于一种激活软件功能的方法,且特别是有关于一种自动检测硬 件组态以设定软件功能启用或停用的方法。
背景技术
一般软件项目需求的规划,客户大都会就其最大的应用需求,而提出可能的 功能需求。然而,在进入开发阶段时,往往会因为硬件规格的限制,亦或是供货商 无法达到某一特定需求,因而需要变更应用软件的设计以符合客户的最终要求。举例来说,不同的供货商会有不同的硬件规格,而应用软件应当能够因应不同的硬件规格而提供不同的设计。又或者是不同的库存计量单位(Stock Ke印ing Unit, SKU)亦会有不同的硬件组态,应用软件也应该能够自动检测启用或是停用 对应的功能等等要求。 一般而言,倘若有如此的要求,应用软件大都能向基本输入 输出系统(Basic Input Output System, BIOS)或是向操作系统来査询硬件组态。 但是,由于客制化功能并不属于标准设计的部分,应用软件无法从BIOS或是操作 系统査询到相关信息,以致于常常需要为应用软件重新建立一个新的版本,以因应 不同的变更要求。如此一来,便造成了应用软件维护上的困难。过多的软件版本需要花费大量 的人力成本进行维护作业,另外,对于维持不同版本间一致性的难度亦颇高。发明内容本发明提供一种设定软件功能启用或停用的方法及其计算机可读取记录媒 体,可自动检测硬件的规格需求数据,而弹性设定是否要将软件功能启用或停用。本发明提出一种设定软件功能启用或停用的方法,适用于设定各个硬件在系 统中所对应的软件功能为启用或停用。首先,建立客制化数据库,其包括硬件的规 格需求数据以决定启用或停用对应的软件功能。接着,自客制化数据库读取规格需求数据。然后,依据规格需求数据,建立硬件组态键值。最后,将硬件组态键值写 入至系统的注册表,以依据注册表来设定软件功能为启用或停用。在本发明的一实施例中,上述在依据规格需求数据,建立硬件组态键值的步 骤之前,还包括依据规格需求数据所记录的设定值,判断软件功能是否要启用,以 判定是否读取所对应硬件的相关设定参数。当软件功能要停用时,则将设定值写入 至硬件组态键值中对应的位置。反之,当软件功能要启用时,则读取所对应硬件的 相关设定参数,以将相关设定参数写入至硬件组态键值中对应的位置。在本发明的一实施例中,上述当软件功能要启用时,则读取所对应硬件的该 相关设定参数的步骤,还包括若规格需求数据包括相关数据时,则自规格需求数据 读取相关设定参数。另外,若规格需求数据不包括相关数据时,则自基本输入输出系统读取相关设定参数,例如自桌上管理接口 (Desktop Management Interface, DMI)中,读取相关设定参数。在本发明的一实施例中,上述硬件组态键值为一字符串。本发明是依据不同的硬件需求,将所订定的规格需求数据存放至客制化数据 库,使得透过读取客制化数据库便可得知哪些软件功能要启用,哪些软件功能要停 用。并且,更可进一步通过规格需求数据来改变软件功能的其它相关设定参数。如 此一来,便可不用变更BIOS的设计与支持,而能在单一软件版本之下,依据客户 的需求来弹性启用对应的软件功能,相当方便。为让本发明的上述特征和优点能更明显易懂,下文特举较佳实施例,并配合 附图,作详细说明如下。


图1是依照本发明第一实施例所绘示的设定软件功能启用或停用的方法流程图。图2是依照本发明第二实施例所绘示的设定软件功能启用或停用的方法流程图。
具体实施方式
一般而言,同一款机型常会有许多延伸的系列机型,因此所需要的库存计量单位(Stock Keeping Unit, SKU)便会有所不同。而随着所需库存计量单位的不同, 硬件组态亦会不同。因此,为了在单一软件版本下,来满足客户的各种需求,本发 明提出一种设定软件功能启用或停用的方法。为了使本发明的内容更为明了,以下 特举实施例作为本发明确实能够据以实施的范例。为了方便说明,在以下实施例中,例如是通过安装一应用软件来设定软件功 能启用或停用。此应用软件例如是利用C语言、Java语言等程序语言所撰写之, 以通过电子自动化的方式完成软件功能的启用或停用。然在此并不以此局限其应用 范围。第一实施例图1是依照本发明第一实施例所绘示的设定软件功能启用或停用的方法流程 图。请参照图1,首先,在步骤S105中,建立一客制化数据库。此客制化数据库 是依据不同的硬件需求而设置(例如,不同的SKU),其中包括了不同硬件的规 格需求数据以决定这些硬件在系统中所对应的软件功能启用与否。进一步地说,规格需求数据记录了多个硬件各自的设定值以及相关设定参数。 设定值是用来决定软件功能是否该启用或停用。例如,在规格需求数据中对应通用 串行总线(Universal Serial Bus, USB)上的某个装置,例如电视(TV)或无线局 域网络(Wireless Local Area Network, WLAN)等设定值若为0,则表示不希望启 用此一装置在系统中的软件功能。而相关设定参数例如为各个硬件的硬件组态,用 以决定各自对应的软件功能要做如何的行为改变。接着,在客制化数据库建立之后,如步骤S110所示,应用软件自客制化数据 库读取规格需求数据。例如,在安装应用软件之时,应用软件会先自客制化数据库 中读取规格需求数据,以依据当中所记录的设定值,来决定哪些软件功能要启用, 哪些软件功能要停用。然后,在步骤S115中,应用软件依据规格需求数据,建立一硬件组态键值。 而硬件组态键值例如是符合系统的注册表(Registry)格式的字符串,利用这个字 符串,让应用软件来解读字符串的内容。硬件组态键值包括了规格需求数据中各个 硬件的设定值以及各自的相关设定参数。举例来说,若设定值为0,代表要停用对应的软件功能;而设定值为l,代表 要启用对应的软件功能。并且假设系统的注册表中的设定值预设皆为1。在读取出规格需求数据时,应用软件便去判断设定值为o或i。当设定值为o时(即软件功能要停用),则将设定值写入至硬件组态键值中对应的位置即可。这 是因为软件功能要停用,因此便不需考虑其它相关设定参数。反之,当设定值为1 时(即软件功能要启用),则读取硬件的相关设定参数,以将相关设定参数写入至 硬件组态键值中对应的位置。由于在本实施例中,规格需求数据包括硬件的相关设 定参数,因此应用软件便将从规格需求数据所读取到的相关设定参数,写入至硬件 组态键值中对应的位置。最后,如步骤S120所示,应用软件将硬件组态键值写入至系统的注册表,以 使应用软件依据注册表来设定软件功能为启用或停用。 一般而言,注册表是用来储 存系统的软件组态、硬件组态和状态讯息等等各类数据。在每次系统激活时,便会 将注册表加载内存,使得应用软件在执行时,能够依据注册表来进行各项设定。另外,在其它实施例中,规格需求数据中亦可仅记录设定值即可,以下便再 举一实施例说明之。第二实施例图2是依照本发明第二实施例所绘示的设定软件功能启用或停用的方法流程 图。请参照图2,本实施例的步骤S205以及步骤S210,分别与第一实施例的步骤 S105以及步骤S110相同或相似,故在此不再详述。本实施例与第一实施例不同之 处在于,本实施例的客制化数据库仅记录了多个硬件各自的设定值,而并未包括对 应的相关设定参数。接着,在查询客制化数据库内的规格需求数据,而得知各个软件功能的启用 与否的讯息之后,如步骤S215所示,应用软件再自BIOS的DMI中读取软件功能 对应的相关设定参数。详细地说,在获得规格需求数据之后,应用软件便依据设定值来判断软件功 能要启用或停用。当软件功能要启用时,由于规格需求数据并未包括对应的相关设 定参数,因此应用软件便则自BIOS的桌上管理接口 (Desktop Management Interface, DMI)中读取软件功能对应的相关设定参数。另外,当软件功能要停用,则不需读 取其相关设定参数。然后,在步骤S220中,应用软件建立硬件组态键值。例如,将要启用的软件 功能所对应的相关设定参数,以及不启用的软件功能的设定值写入硬件组态键值中对应的位置。最后,如步骤S225所示,应用软件通过解读硬件组态键值的内容, 将硬件组态键值写入系统的注册表。如此一来,便能够依据注册表来设定软件功能 为启用或停用,而达成客制化要求。综上所述,在上述诸实施例中,在不同的硬件需求上安装时,应用软件会自 动检测硬件的规格需求数据,来建立不同且特定的硬件组态键值,并写入至注册表 中。藉此,应用软件只要在注册表中读取特定的硬件组态键值,便可正确地判断要 如何处理各种不同的要求。在软件设计上,只需维护客制化数据库即可,而达到开 发单一版本,进一步降低软件维护成本。虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何所属 技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作些许更动与 润饰,因此本发明的保护范围当以权利要求所界定的为准。
权利要求
1.一种设定软件功能启用或停用的方法,适用于设定一硬件在一系统中所对应的一软件功能为启用或停用,该方法包括建立一客制化数据库,其包括该硬件的一规格需求数据;自该客制化数据库读取该规格需求数据;依据该规格需求数据,建立一硬件组态键值;以及将该硬件组态键值写入至该系统的一注册表,以依据该注册表来设定该软件功能为启用或停用。
2. 如权利要求1所述的设定软件功能启用或停用的方法,其特征在于,在依据 该规格需求数据,建立该硬件组态键值的步骤之前,还包括依据该规格需求数据所记录的一设定值,判断该软件功能是否要启用,以判 定是否读取该硬件的一相关设定参数。
3. 如权利要求2所述的设定软件功能启用或停用的方法,其特征在于,判断该 软件功能是否要启用的步骤,包括当该软件功能要停用时,则将该设定值写入至该硬件组态键值中对应的位置。
4. 如权利要求2所述的设定软件功能启用或停用的方法,其特征在于,判断该 软件功能是否要启用的步骤,包括当该软件功能要启用时,则读取该硬件的该相关设定参数,以将该相关设定 参数写入至该硬件组态键值中对应的位置。
5. 如权利要求4所述的设定软件功能启用或停用的方法,其特征在于,当该软 件功能要启用时,则读取该硬件的该相关设定参数的步骤,还包括若该规格需求数据包括该相关数据时,则自该规格需求数据读取该相关设定 参数;以及若该规格需求数据不包括该相关数据时,则自一基本输入输出系统读取该相 关设定参数。
6. 如权利要求5所述的设定软件功能启用或停用的方法,其特征在于,若该规 格需求数据不包括该相关数据时,还包括-自该基本输入输出系统的一桌上管理接口中,读取该相关设定参数。
7.如权利要求1所述的设定软件功能启用或停用的方法,其特征在于,该硬件 组态键值为一字符串。
全文摘要
本发明公开了一种设定软件功能启用或停用的方法。此方法适用于设定各个硬件在系统中所对应的软件功能为启用或停用。首先,建立客制化数据库,其包括硬件的规格需求数据以决定启用或停用对应的软件功能。接着,自客制化数据库读取规格需求数据。然后,依据规格需求数据,建立硬件组态键值。最后,将硬件组态键值写入至系统的注册表,以依据注册表来设定软件功能为启用或停用。
文档编号G06F9/44GK101576819SQ20081009850
公开日2009年11月11日 申请日期2008年5月5日 优先权日2008年5月5日
发明者黄允良 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1