专利名称:控制可移动设备上的应用程序运行的方法和装置的制作方法
技术领域:
本发明涉及控制应用程序运行的方法和装置,更具体而言,涉及一种控制可移动 设备上的应用程序运行的方法和装置。
背景技术:
可移动的应用软件将软件和可移动的存储设备形成一个有机整体,通过可移动存 储设备的便携和可移动实现软件的便携和可移动。其基本原理是让可移动存储设备具备加 密狗的能力,并利用可移动存储设备的存储能力将软件保存在其中,从而实现软件和加密 狗的结合。但是,在实际的应用过程中,用户可以将软件从可移动存储设备中移出到其他多 个存储设备上,而单独使用可移动存储设备的加密狗特性,以实现不受软件帐套数的限制 任意使用软件的目的。现有方案在实现管理软件的便携式运行过程中,通过便携设备的授权认证,将便 携式设备作为带有存储功能的加密狗来使用,而没有限制产品只能在固定的路径下执行, 而管理软件往往是有帐套数量限制的,便携式管理软件如果将产品拷贝到其他存储设备 上,而仅将授权的可移动存储设备作为加密狗使用,就能轻易突破管理软件的帐套数限制, 对用户而言,如果其购买的便携式管理软件又带有数据保护机制,又将软件从授权设备中 拷贝到磁盘上,则还可能导致用户的数据紊乱。现有的技术中,因为将可移动存储设备插入计算机后,计算机分配的盘符是不确 定的,是根据当前所在机器现有的驱动器数目和已插入的可移动存储设备数量随机确定 的,因此无法在管理软件中明确产品只能在哪个存储设备上运行。为了维护市场秩序和保护软件开发商和用户的利益,需要提供一种控制可移动存 储设备上的应用程序运行的方法,使用户购买的软件符合授权协议的内容,控制软件只能 在软件厂商提供的可获得随机盘符的可移动存储设备上运行,甚至仅能在这个随机盘符下 的特定路径上才能运行。
发明内容
本发明所要解决的技术问题在于,提供一种控制方法,来控制软件只能在插入的 已授权的可移动存储设备上或者在可移动存储设备的随机盘符下的特定路径下才能运行。有鉴于此,本发明提供一种控制可移动存储设备上的应用程序运行的方法,包括 步骤102,在启动所述应用程序时,加载读写程序,通过所述读写程序确定是否能够在所述 可移动设备上读取到授权信息,如果确定能够读取到所述授权信息,则执行步骤104,否则, 不允许运行所述应用程序;步骤104,在确定能够读取到所述授权信息时,通过所述读写程 序读取所述授权信息所在的驱动器的盘符;步骤106,所述应用程序获取自身运行的路径, 并通过所述路径确定运行所述应用程序的驱动器的盘符;以及步骤108,确定运行所述应 用程序的驱动器的盘符与所述读写程序读取的盘符是否匹配,如果匹配,则允许运行所述 应用程序,否则,不允许运行所述应用程序。
在上述技术方案中,优选地,所述授权信息存储在所述可移动设备上的私密区中, 其中所述私密区对于用户是不可见的。在上述技术方案中,优选地,所述授权信息和所述读写组件都不能够被修改。在上述技术方案中,优选地,所述读写组件与所述应用程序位于同一目录下。在上述技术方案中,优选地,在所述步骤104中包括所述读写程序通过遍历计算 机中所有的驱动器,并在遍历过程中尝试读取每个驱动器中的预设位置是否具有所述授权 信息,如果能够读取到所述授权信息,则读取所述授权信息所在的驱动器的盘符。本发明还提供了一种控制可移动设备上的应用程序运行的装置,包括读写单元, 位于所述可移动设备上,用于在启动所述应用程序时,确定是否能够在所述可移动设备上 读取到授权信息,在确定能够读取到所述授权信息时,读取所述授权信息所在的驱动器的 盘符,否则,不允许运行所述应用程序;路径获取单元,位于所述可移动设备上,获取所述应 用程序自身运行的路径,并通过所述路径确定运行所述应用程序的驱动器的盘符;以及匹 配单元,连接到所述读写单元和所述路径获取单元,确定由所述路径获取单元确定的运行 所述应用程序的驱动器的盘符与由所述读写单元获取的所述读写程序读取的盘符是否匹 配,如果匹配,则允许运行所述应用程序,否则,不允许运行所述应用程序。在上述技术方案中,优选地,所述授权信息存储在所述可移动设备上的私密区中, 其中所述私密区对于用户是不可见的。在上述技术方案中,优选地,所述授权信息不能够被所述读写单元修改。在上述技术方案中,优选地,所述读写单元读取所述可移动设备上与所述应用程 序同一目录下的授权信息。在上述技术方案中,优选地,所述读写单元通过遍历计算机中所有的驱动器,并在 遍历过程中尝试读取每个驱动器中的预设位置是否具有所述授权信息,如果能够读取到所 述授权信息,则读取所述授权信息所在的驱动器的盘符。通过上述技术方案,可以保证应用程序和可移动存储设备的一一对应,而仅通过 使用授权可移动存储设备的加密狗特性,就可以防止应用程序被拷贝到其他硬盘中使用, 从而保护应用程序的帐套数限制。
图1是根据本发明的一个实施例的控制可移动存储设备上的应用程序运行的方 法的流程图;图2是根据本发明的一个实施例的控制可移动存储设备上的应用程序运行的装 置的结构图;图3是根据本发明的一个实施例的可移动存储设备上的应用程序启动控制流程 图。
具体实施例方式为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实 施方式对本发明进行进一步的详细描述。在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明并不限于下面公开的具体实 施例的限制。图1是根据本发明的一个实施例的控制可移动存储设备上的应用程序运行的方 法的流程图。如图1所示,根据本发明提供的控制可移动存储设备上的应用程序运行的方法, 包括步骤102,在启动应用程序时,加载读写程序,通过读写程序确定是否能够在可移 动设备上读取到授权信息,如果确定能够读取到授权信息,则执行步骤104,否则,不允许运 行应用程序;步骤104,在确定能够读取到授权信息时,通过读写程序读取授权信息所在的驱动 器的盘符;步骤106,应用程序获取自身运行的路径,并通过路径确定运行该应用程序的驱动 器的盘符;以及步骤108,确定运行该应用程序的驱动器的盘符与读写程序读取的盘符是否匹配, 如果匹配,则允许运行该应用程序,否则,不允许运行该应用程序。优选地,授权信息存储在可移动设备上的私密区中,其中私密区对于用户是不可 见的。优选地,授权信息和读写程序都不能够被修改。进一步,优选地,读写程序与应用程序位于同一目录下。优选地,在步骤104中包括读写程序通过遍历计算机中所有的驱动器,并在遍历 过程中尝试读取每个驱动器中的预设位置是否具有授权信息,如果能够读取到授权信息, 则读取授权信息所在的驱动器的盘符。图2是根据本发明的一个实施例的控制可移动存储设备上的应用程序运行的装 置的结构图。如图2所示,本发明提供了一种控制可移动存储设备上的应用程序运行的装置 200,包括读写单元202,位于可移动设备上,用于在启动应用程序时,确定是否能够在可移 动设备上读取到授权信息,在确定能够读取到授权信息时,读取授权信息所在的驱动器的 盘符,否则,不允许运行应用程序;路径获取单元204,位于可移动设备上,获取应用程序自身运行的路径,并通过该 路径确定运行应用程序的驱动器的盘符;匹配单元206,连接到读写单元202和路径获取单元204,确定由路径获取单元204 确定的运行应用程序的驱动器的盘符与由读写单元202获取的读写程序读取的盘符是否 匹配,如果匹配,则允许运行应用程序,否则,不允许运行应用程序。图3是根据本发明的一个实施例的可移动存储设备上的应用程序启动控制流程 图。在该实施例中,可移动存储设备内嵌入了私密区,该私密区通常对于用户是不可 见的,仅能通过该可移动存储设备的软件厂商提供的专用驱动程序才能读写。一般情况下, 该区域中有软件厂商存放软件的授权信息,在程序执行时进行访问以获得该软件是否已获得授权。软件在执行时如果需要读取该私密区的内容,就需要软件厂商提供一个读写该私 密区的程序(组件)来读取该私密区中的内容。如图3所示,在步骤302,软件(应用程序)启动时,通过加载位于同一目录下的私 密区读写组件来读取软件厂商预置的授权信息,如能够读取到,说明授权信息合法,并且私 密区读写组件与软件在同一目录下。在步骤304,软件通过私密区读写组件中的读取盘符功能来读取私密区所在驱动 器盘符,该读取盘符功能例如可以通过遍历计算机中所有的驱动器,并在遍历过程中尝试 读取每个驱动器中固定位置是否有授权信息,如果能读到授权信息,则返回正在遍历的驱 动器盘符,即,如果能够读到,则说明该驱动器是已授权的可移动存储设备。在步骤306,软件可获取自身运行时的路径信息,通过将软件获取的运行时路径信 息与在304中获取的盘符信息进行比较,如果分别获取的两个盘符信息匹配,则可知用户 是否是从已授权的可移动存储设备中启动程序。在步骤308,确认用户是在已授权的可移动存储设备上运行软件,授权信息合法, 软件进入正常运行状态。根据上述结合本发明的实施例所描述的技术方案,能够限制管理软件仅能从随机 分配的可移动存储设备上运行,甚至限制管理软件仅能从随机分配的存储设备上的一个特 定路径上运行,从而防止了轻易突破授权限制的情况,也不会再发生用户购买的便携式管 理软件带有数据保护机制而又将软件从授权设备拷贝到磁盘上,导致用户数据紊乱的情况 发生。通过本发明提供的技术方案,可以保证应用程序只能在带有该应用程序授权信息 的可移动存储设备上运行,防止应用程序被拷贝到其他硬盘上使用,提高了软件的加密能 力,有效保护了软件开发商的利益。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技 术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修 改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种控制可移动设备上的应用程序运行的方法,其特征在于,包括步骤102,在启动所述应用程序时,加载读写程序,通过所述读写程序确定是否能够在 所述可移动设备上读取到授权信息,如果确定能够读取到所述授权信息,则执行步骤104, 否则,不允许运行所述应用程序;步骤104,在确定能够读取到所述授权信息时,通过所述读写程序读取所述授权信息所 在的驱动器的盘符;步骤106,所述应用程序获取自身运行的路径,并通过所述路径确定运行所述应用程序 的驱动器的盘符;以及步骤108,确定运行所述应用程序的驱动器的盘符与所述读写程序读取的盘符是否匹 配,如果匹配,则允许运行所述应用程序,否则,不允许运行所述应用程序。
2.根据权利要求1所述的控制可移动设备上的应用程序运行的方法,其特征在于,所 述授权信息存储在所述可移动设备上的私密区中,其中所述私密区对于用户是不可见的。
3.根据权利要求1所述的控制可移动设备上的应用程序运行的方法,其特征在于,所 述授权信息和所述读写程序都不能够被修改。
4.根据权利要求1所述的控制可移动设备上的应用程序运行的方法,其特征在于,所 述读写程序与所述应用程序位于同一目录或不同目录下。
5.根据权利要求1至4中任一项所述的控制可移动设备上的应用程序运行的方法,其 特征在于,在所述步骤104中包括所述读写程序通过遍历计算机中所有的驱动器,并在遍 历过程中尝试读取每个驱动器中的预设位置是否具有所述授权信息,如果能够读取到所述 授权信息,则读取所述授权信息所在的驱动器的盘符。
6.一种控制可移动设备上的应用程序运行的装置,其特征在于,包括读写单元,位于所述可移动设备上,用于在启动所述应用程序时,确定是否能够在所述 可移动设备上读取到授权信息,在确定能够读取到所述授权信息时,读取所述授权信息所 在的驱动器的盘符,否则,不允许运行所述应用程序;路径获取单元,位于所述可移动设备上,获取所述应用程序自身运行的路径,并通过所 述路径确定运行所述应用程序的驱动器的盘符;匹配单元,连接到所述读写单元和所述路径获取单元,确定由所述路径获取单元确定 的运行所述应用程序的驱动器的盘符与由所述读写单元获取的所述读写程序读取的盘符 是否匹配,如果匹配,则允许运行所述应用程序,否则,不允许运行所述应用程序。
7.根据权利要求6所述的装置,其特征在于,所述授权信息存储在所述可移动设备上 的私密区中,其中所述私密区对于用户是不可见的。
8.根据权利要求6所述的装置,其特征在于,所述授权信息不能被所述读写单元修改。
9.根据权利要求6所述的装置,其特征在于,所述读写单元读取所述可移动设备上与 所述应用程序同一目录下的授权信息。
10.根据权利要求6至9中任一项所述的装置,其特征在于,所述读写单元通过遍历计 算机中所有的驱动器,并在遍历过程中尝试读取每个驱动器中的预设位置是否具有所述授 权信息,如果能够读取到所述授权信息,则读取所述授权信息所在的驱动器的盘符。
全文摘要
本发明提供了一种控制可移动设备上的应用程序运行的方法,包括应用程序启动时,读取该软件的授权信息;读取授权信息所在的驱动器盘符;获取应用程序运行时的路径及盘符;将授权信息所在的驱动器盘符与应用程序运行时的路径中的盘符进行匹配,若一致,则允许运行软件,否则,不允许运行。本发明还提供了一种控制可移动设备上的应用程序运行的装置,包括读写单元、路径获取单元和匹配单元。通过本发明提供的技术方案,可以保证应用程序只能在带有该应用程序授权信息的可移动存储设备上运行,防止应用程序被拷贝到其他存储设备或路径上使用,提高了软件的加密能力,能有效保护软件开发商的利益。
文档编号G06F21/00GK102073813SQ201010608520
公开日2011年5月25日 申请日期2010年12月27日 优先权日2010年12月27日
发明者秦健, 赖恒坚 申请人:畅捷通软件有限公司