专利名称:资源套组的制成和应用程序中节约存储空间的方法
技术领域:
本发明是关于资源套组的制成及支持多个资源套组的应用程序中,节约存储空间的方法。更具体地说,本发明是关于在利用多个资源的应用程序中,由于支持多国语言等原因,在使用多个资源套组的应用程序中能够有效提高存储空间使用效率,从而能够有效提高资源的存储空间的方法。
背景技术:
窗口用应用程序大多可以分为资源部分和运行部分。应用程序使用的所有资源,其中包括从对话窗口到各种字符串、位图和一般数据等应用程序使用的所有数据。
在对这些资源进行存储的过程中,为了方便使用和提高数据处理的效率,采取将所有资源作为一个数据包的形式进行处理的方式。数据包或者是原有文件及执行文件的资源部分所使用的所有资源总称为一个资源套组。为了支持多国语言或者进行皮肤更换,具有多个套组的应用程序被大量制作出来。这些应用程序资源部分和执行码部分完全分离开,仅通过改变资源部分,来支持多国语言,进行皮肤更换和修改其它资源等,从而大大提高了应用程序的自由度。这种过程如图1所示。
但是,在这种普通的资源变更结构中存在着很多缺点。其中,最大的缺点是必须始终将所有资源打包进行配置管理。如果资源套组小,则不存在什么大的问题,但是,使用巨大资源的应用程序中,这种问题便不容小视。为了解决这些问题,虽然也使用将字符串、位图和数据等每个部分进行资源分离管理的方式,但是,也存在着有个别部分没有分开的可能性等资源管理中的难点问题。
发明内容
为了解决上述问题,本发明的目的是提供一种不占用很大空间的资源套组制成方法和支持上述资源套组的应用程序中所需要的节约存储资源空间的方法。
为了实现上述目的,依据本发明的资源套组制成方法由以下两阶段所组成a)准备资源的主套组,并将该资源合并为一个资源阶段;b)从特定目的资源中,仅将主套组中不存在的资源集中起来,并制作辅助套组阶段。
在本明中,在b)阶段制成至少一个以上的辅助套组。
在本发明中,上述b)阶段中上述辅助套组包含所有资源。
在本发明中,上述资源中设置了能够区别各种资源的GUID。
作为本发明中的一种改进,在特定资源登录中能够插入所需要的套组链接信息,能够存储和读取所需要的资源。
在本发明中,上述链接信息的格式中包含相关登录显示链接的信息头和需要链接的资源套组的GUID,并能够存储和读取所需要的资源。
依据本发明的支持多个资源套组的应用程序中节约存储空间的方法由以下各阶段所组成c1)读取出能够同时提供存在的所有资源套组和应用程序的基本资源套组,记录GUID和文件名阶段;c2)制定现在所要使用资源的GUID阶段;c3)读取出现在资源套组中各辅助套组,并记忆其顺序阶段;c4)当调用应用程序中特定资源时,在查找到相关资源前,按照主套组和辅助套组的顺序进行检索,如果发现上述相关资源,便将其返还相关应用程序阶段;c5)在上述c4)阶段中,如果没有发现相关资源,便从上述a)阶段中所记录的基本资源套组中检索相关资源,如果发现上述相关资源,便将其返还相关应用程序阶段;c6)运行相关资源阶段。
在本发明中,上述c1)阶段中,对相关GUID和文件名的存储及c2)阶段中制定并存储现在所需要使用的资源的GUID的方法为存储入登录程序或者是其它的设定文件中。
在本发明中,c4)阶段或者是c5)阶段中还包括以下阶段在查找相关资源时,上述相关资源的内容如果是链接信息,便打开具有链接资源套组GUID的资源套组,并查找相关资源,如果有,便将其转换为应用程序阶段。
在本发明中,上述c5)阶段如果没有发现相关资源,便出现资源检索失败信息。
如上所述,依据本发明,使用多个资源套组的应用程序能够更容易对资源进行管理,程序开发者和设计者们能够将资源间的相关关系与应用程序相分离,从而能够提高工作的效率。
同时,因为消除了多个资源套组中共通部分的重复,资源的大小在存在问题的嵌入环境中能够被更有用地进行使用。
图1所显示的是原有应用程序使用多个资源套组的方法概略图。
图2所显示的是依据本发明实施例的制成资源套组的方法流程图。
图3所显示的是依据本发明实施例的支持多个资源套组的应用程序中节约存储空间的方法流程图。
具体实施例方式
下面,将参照附图对本发明进行更详细说明。
图2所显示的是依据本发明实施例的制成资源套组的方法流程图。
在上述实施例中,资源套组的制成方法大体可以分为制成主套组和制成辅助套组阶段。
下面,将对在上述实施例中,在相关应用程序检索资源之前,制成资源套组的方法进行详细说明。
参照图2可知,准备资源套组的方式如下。
首先,事先规定一下所使用的词语。最初企图进行检索的资源套组被命名为主套组。当对主套组进行检索失败时所试图检索的其它资源套组被命名为辅助套组。
准备各资源的主套组,并将该资源合为一个套组。此后,仅从特定目的的资源中主套组已经不存在的资源进行集中,并制成辅助套组1。同时,从其它目的的资源中,仅将主套组和辅助套组1中不存在的资源进行集中,并制成辅助套组2。
上述过程反复运行,使所有资源属于主套组和辅助套组中。
每个资源套组中都赋予了GUID,每个资源套组中检索资源失败时,都维持有试图查找的资源GUID列表,当应用程序调用相关套组中所不存在的资源时,便从其下一资源套组中试图进行检索,如果失败时,再试图从下一个资源套组中进行检索。
同时,特定资源的登录也可以与基本辅助套组无关,加入所需要的资源套组链接信息,对于该资源来说,与该套组所试图的套组顺序无关,能够指定并读取出所需要的资源。
链接信息的格式没必要进行确定,但是必须包含显示相关登录链接的信息头和所要链接资源套组的GUID。
在所有试图都失败的情况下,便作为基本数值,从所具有的基本资源套组中读取出来并进行利用。
因此,在本发明中所指示出的追加数据大体有两大种。首先,第一个是在不存在应用程序所调用的资源时,所要查找的资源套组的列表;另一个是代替每个实际文件存在的链接信息。辅助套组的列表也作为资源套组资源中的一个被制作出来。
图3所显示的是依据本发明实施例的支持多个资源套组的应用程序中节约存储空间的方法流程图。
下面将参照图3进行更详细说明。
201阶段是相关应用程序开始的过程。202阶段是设定辅助套组的过程。应用程序驱动时读取存在的所有资源套组,并将相关GUID和文件名记录在登录程序或者是其它设定文件中。同时,与应用程序一起提供的基本资源套组对应用程序GUID进行记忆。应该通过应用程序或其它设置程序,来决定即将使用的资源的GUID,这也被记录到登录程序或者是设定文件中。在应用程序驱动时或者是资源变更时,资源管理器读取出现在资源套组的辅助套组,并对其顺序进行记忆。
203阶段是应用程序调取特定资源的过程。
204阶段至205阶段是查找并返还相关资源的过程。
首先,主套组试图查找相关资源,但如果失败的话,便从第一个辅助套组中查找该资源。如果成功从辅助套组中查找到相关资源的话,便将该资源返还,如果失败的话,并从其下一辅助套组中进行查找,并按照这种方式进行反复操作。
206阶段是从基本套组中检索相关资源的过程。
如果对所有资源套组进行检索均失败的话,便从202阶段中所记忆的基本资源套组中查找资源,并进行返还。
207阶段是应用程序使用所返还资源的过程。
假定基本资源套组中拥有应用程序所要调用的所有资源,或者是因为文件种类等原因而失败的话,便可以看作最终失败,并返还如208阶段的失败信息。
在上述204阶段和205阶段中,查找资源或者在是资源内容链接信息的情况下,便打开具有将要链接资源套组的GUID的资源套组,并从该资源套组中查找相同的资源,并进行返还。
权利要求
1.资源套组的制成方法,包括以下两个阶段的a)准备资源的主套组,并将该资源合并为一个资源;b)从特定目的资源中,仅将主套组中不存在的资源集中起来,并制作辅助套组。
2.如权利要求1所述的资源套组的制成方法,其特征在于上述资源中设置了能够区别各种资源的GUID。
3.如权利要求项1所述的资源套组的制成方法,其特征在于在特定资源登录中能够插入所需要的套组链接信息,上述链接信息的格式中包含相关登录显示链接的信息头和需要链接的资源套组的GUID,并能够存储和读取所需要的资源。
4.支持多个资源套组的应用程序中节约存储空间的方法,其特征在于,包括以下阶段c1)读取出能够同时提供存在的所有资源套组和应用程序的基本资源套组,记录GUID和文件名阶段;c2)制定现在所要使用资源的GUID阶段;c3)读取出现在资源套组中各辅助套组,并记忆其顺序阶段;c4)当调用应用程序中特定资源时,在查找到相关资源前,按照主套组和辅助套组的顺序进行检索,如果发现上述相关资源,便将其返还相关应用程序阶段;c5)在上述c4)阶段中,如果没有发现相关资源,便从上述a)阶段中所记录的基本资源套组中检索相关资源,如果发现上述相关资源,便将其返还相关应用程序阶段;c6)运行相关资源阶段。
5.如权利要求项4所述的支持多个资源套组的应用程序中节约存储空间的方法,其特征在于上述c1)阶段中,对相关GUID和文件名的存储及c2)阶段中制定并存储现在所需要使用的资源的GUID的方法是存储入登录程序或者其它的设定文件中。
6.如权利要求项4所述的支持多个资源套组的应用程序中节约存储空间的方法,其特征在于c4)阶段或者是c5)阶段中在查找相关资源时,上述相关资源的内容如果是链接信息,便打开具有所链接资源套组GUID的资源套组,并查找相关资源,如果有,便将其转换为应用程序阶段。
全文摘要
本发明是关于资源套组的制成及在支持多个资源套组的应用程序中节约存储空间的方法。本发明的资源套组制成方法由以下两阶段所组成a)准备资源的主套组,并将该资源合并为一个资源阶段;b)从特定目的资源中,仅将主套组中不存在的资源集中起来,并制作辅助套组阶段。依据本发明,使用多个资源套组的应用程序能够更容易对资源进行管理,程序开发者和设计者们能够将资源间的相关关系与应用程序相分离,从而能够提高工作的效率。利用在支持多个资源套组的应用程序中节约存储空间的方法,消除了多个资源套组中共通部分的重复,资源的大小在存在问题的嵌入环境中能够被更有用地进行使用。
文档编号G06F9/44GK1912839SQ20051004142
公开日2007年2月14日 申请日期2005年8月10日 优先权日2005年8月10日
发明者张泽洙, 朴河泳 申请人:乐金电子(昆山)电脑有限公司