DIY及OEM包制作
 
A。 OEM包的制作
OEM(
Original Equipment Manufacturer)全称:原始设备制造商,在这里,它代表的是"原材料",是制作ROM最原始的材料,一切集成到ROM里的东西统称为OEM包,不仅仅只包括软件包;但是,因为其他的材料都是现成的,固定的,并且只会定期更新的,而只有软件的OEM包才是非现成的,非固定的,并且是持续更新的,所以在这里,我们其实要学习的是软件OEM包的制作。

制作OEM软件包的工具有很多,并且很多可能都是傻瓜式的,但是为了便于大家能看清晰整个OEM软件包的功能和构成,所以我还是打算选择手工制作OEM包的工具,其中最常见的是WinCE.CAB.Manager。

在谈制作之前,我们先来了解一下一个完整的OEM包有哪些组成部分:

DIY及OEM包制作 _上图 DIY及OEM包制作 _软件包_02
看上图,一共8个文件分类如下:
软件本身的文件
软件快捷方式(非必要,视情况而定)
DSM(不可少)
RGU(非必要,视情况而定)
initflashfiles.txt(非必要,视情况而定)
option.xml(不可少)

DSM文件:这个文件在创建ROM的时候是其到关联作用的,它确定了每个软件该调用和分配那些文件,缺少了它,软件包里相关的文件就不能被分配,换句话说软件包将不会被订制进去,在系统硬启的时候也是它在起重新分配的作用,所以,它不可缺。

Option.xml文件:用于支持Buildos对软件包进行加载的,在Buildos界面会显示出软件包的信息,不可缺。

RGU:注册表文件 ,非必要,因为部分软件集成进ROM里是不需要注册表项的。

initflashfiles.txt:用于指定软件相关文件的位置以及指定快捷方式的路径,非必要,部分软件只需要默认到Windows\下并且不需要快捷方式

下面我们来看看上面的这几个文件在OEM包里是如何编辑的:

所有的OEM包在定制进ROM的时候他它们的分配原理都是一样的,所以对他们的编辑都有相同的结构描述
以上图中的WM5torage的软件OEM包为例:
DIY及OEM包制作 _上图 DIY及OEM包制作 _上图_04
上图中我们可以看到DSM和RGU前面的编码是相同的,这个编码称为GUID(
Global unique identifier)码,英文意是"全球唯一标识符",因为是唯一的,所以就不会和其他OEM包里的编码重复(前面我们说过ROM里的文件名不能有重复的);GUID码可以用GUID生成器取得.

实质上,制作OEM包我们需要解决的只是以下这几个文件,至于软件本身的东西,我们都是已有的:
DIY及OEM包制作 _上图 DIY及OEM包制作 _软件包_06

rgu用文本把它打开我们可以看到它固定的格式:
DIY及OEM包制作 _上图 DIY及OEM包制作 _文件_08    

见上图我们可以看到是以"REGEDIT4"这个语句顶格开头的

initflashfiles.txt打开后:
DIY及OEM包制作 _上图 DIY及OEM包制作 _制作_10

上图我们可以清楚地看到它在指定快捷方式的路径的时候所用的语句描述

再看option.xml,用编辑模式把它打开:
DIY及OEM包制作 _上图 DIY及OEM包制作 _文件_12

上图中的结构简单说明下:
a.固定结构是以<?xml version="1.0" encoding="UTF-16" standalone="yes"?>开头,用</Items>...</Items>的对称结构嵌入内容。
b. <Item name="WM5torage" group="附件" checked="false">...</Item>的结构打包所有的内容,"
Item name="定义在Buildos界面出现的名称," group="定义出现在Buildos界面里的哪个板块中, "checked="定义在Buildos界面里默认是选用的还是非选用的,默认选用为"true",默认不选用为"false",这样可以可以省去哪些需要打勾哪些需要取消的麻烦。
c.后面的几行:
<Tip>注释(表明这个是做什么用的,在Buildos界面里把鼠标移上去就会出现)<Tip>
<Guid type="p">该软件对应的GUID码</Guid>
<OEMVersion>OEM版本号(你自己取的)</OEMVersion>
<OEMDate>OEM包的制作日期</OEMDate>
<AppVersion>该软件的版本号(软件里有标注的)</AppVersion>
<AppAuthorURL>软件作者所在的网址信息</AppAuthorURL>
<OEMAuthor>OEM制作者的信息</OEMAuthor>

上面红色字体的部分是必须要填入的,其他的可以填也可以不填。

了解了上面这些,我们再来看看几种情况之下的OEM包的制作:
准备好工具
WinCE.CAB.Manager,下载汉化破解版安装后我们开工了

实例1:CAB转化为OEM
DIY及OEM包制作 _上图 DIY及OEM包制作 _软件包_14

打开
WinCE.CAB.Manager点图中红框的图标,寻找Storage_WM5torage.cab的路径打开它
DIY及OEM包制作 _上图 DIY及OEM包制作 _OEM_16 DIY及OEM包制作 _上图 DIY及OEM包制作 _文件_18

上图中我们可以看到这个CAB的文件包含了"文件","快捷方式"和"注册表"三部分,下面要做的是我们需要把上面这几部分全部导出来:
DIY及OEM包制作 _上图 DIY及OEM包制作 _文件_20

建立一个新的文件夹可以取名为Storage_WM5torage,然后把上图中的"文件"和"快捷方式"里的所有东东全部导入进去,导出的方法是全选择所有文件,见上图,然后点右键选择"解压",然后把路径选择为你刚建立的那个
Storage_WM5torage文件夹DIY及OEM包制作 _上图_21DIY及OEM包制作 _文件_22;注册表项导出方法是,选择"注册表",然后点WinCE.CAB.Manager软件任务栏上的"文件"-"导出"-"导出到REG",然后选择路径为Storage_WM5torage文件夹即可。

下面我们来看看Storage_WM5torage文件夹里现在有哪些东东:
DIY及OEM包制作 _上图 DIY及OEM包制作 _OEM_24
至此,CAB文件里的所有信息都被提取出来了,现在着手做OEM包里其他的组成部分:
DSM,RGU,initflashfiles.txt和option.xml

制作DSM和RGU是需要GUID码的,前面我们说过可用通过GUID生成器取得:
DIY及OEM包制作 _上图 DIY及OEM包制作 _软件包_26

打开它:
DIY及OEM包制作 _上图 DIY及OEM包制作 _OEM_28

选择"同时生成DSM和RGU文件",点"生成文件",就会在同级目录中产生DSM和RGU文件了
DIY及OEM包制作 _上图 DIY及OEM包制作 _OEM_30
此时我们可以看到生成的DSM和RGU文件都为空的,一般情况下DSM文件都为空,对于RGU文件,我们可以打开先前的
DIY及OEM包制作 _软件包_31Storage_WM5torage文件夹,打开里面的Storage_WM5torage.reg文件,把里面所有的注册表项全复制到上图中的RGU文件里并保存。
DIY及OEM包制作 _上图 DIY及OEM包制作 _制作_33 DIY及OEM包制作 _上图 DIY及OEM包制作 _制作_35

然后我们把DSM和RGU这两个文件放进Storage_WM5torage文件夹里,把先前的Storage_WM5torage.reg文件从文件夹里删除,至此,DSM和RGU文件建立完成。

现在来做
initflashfiles.txt文件,这个文件是用来指定该软件的快捷方式的,当然软件不需要快捷方式那这个文件就可以不建了;一般来说我们是把快捷方式放到系统的"程序"文件夹(也可以放到"设置"里,后面再讲)里的,建立一个空的txt文件取名为initflashfiles.txt,内容可以这样来编辑:
DIY及OEM包制作 _上图 DIY及OEM包制作 _上图_37

请大家看清楚上图中的格式,因为所有的软件一般(特殊情况可以安装到别的位置,后面再说)是默认到Windows\下的,所以我们指定快捷方式的路径是"\Windows\WM5torage.lnk",前面的"移动U盘.lnk"是对快捷方式的更名,当然你也可以改成其他的,注意扩展名".lnk"是不能变的.
initflashfiles.txt建立以后把它放到Storage_WM5torage文件夹里。

再来解决最后一个文件option.xml,这个的格式的固定的,建立一个空的文本文件取名为option.txt,我们可以这样来编辑它:
DIY及OEM包制作 _上图 DIY及OEM包制作 _OEM_39
这几个的意思前面已经解释过了,这里需要注意的是在
<Guid type="p">该软件对应的GUID码</Guid>这里,我们需要把该软件刚才得到的GUID码复制进去,这样Buildos才能找到它,其他的地方自己随便写,然后保存,最后把option.txt的文件改名为option.xml,并保存为Unicode格式,然后把它放进文件夹Storage_WM5torage里,这样,一个完整的OEM包就制作完成了,然后我们就可以把它放进我们的模板里使用了。

实例2:绿色软件转化为OEM
绿色软件一般大部分机油直接放在卡上使用或者刷机完成后复制到机身内存里使用,但是有部分机油有这方面的嗜好,喜欢把任何东西都集成进去,所以在这里顺便说一下关于绿色软件做成OEM包的问题.

绿色软件之所以是绿色的,最大区别在于不需要系统事先加载配置文件并不需要事先的注册表项而可以单独直接地在机器里运行,其他和一般软件无异.
绿色软件可能是以文件夹形式的模块存在,也可能是单独的.exe执行文件,虽然后没有任何的事先的注册表项,但是,在机器中设置运行的时候,大部分都要通过系统注册表来开启调用,所以,在做绿色软件的OEM包的时候,千万不能忽略了注册表项.

步骤:
1.将事先要做成OEM包的绿色软件放于机器中并开启正常调用和运行方式.
2.查询该绿色软件在系统中所关联的注册表信息,其中也包括需要在PPC上进行注册的绿色软件的信息,将所有的注册表项搜索出来导出到PC.
3.复制绿色软件的快捷方式导出到PC.
4.建立该绿色软件的OEM文件夹,建立DSM和RGU,导入注册表信息到RGU,将绿色软件的全部文件放置于该OEM包里(其中包括快捷方式文件),建立Initflashfiles.txt,定义该绿色软件的快捷方式,最后建立Option.xml.(具体请参考实例1)

上面的内容除了DSM和Option.xml为必须外,其他都为非必须的,也就是说,可以没有注册表信息(如果系统里不存在注册表信息),可以没有快捷方式(不需要),也可以没有绿色软件而只需要导入注册表信息到系统里,具体视情况而定.

B.常用的几个工具介绍:

实例1:关于WinCAB.Manager的应用
该工具可运用在一切CAB格式文件的编辑上,也可以用在.tsk主题制作上

关于制作CAB安装包:

不论是哪种性质的文件,在
WinCAB.Manager里都把它分为3部分:文件,快捷方式,注册表
所以在制作CAB安装包的时候需要准备上面三部分材料,其中"文件"内容和"注册表"内容必须要是现成的,而快捷方式可在
WinCAB.Manager里创建,下面说下制作过程:

1.打开
WinCAB.Manager
DIY及OEM包制作 _上图 DIY及OEM包制作 _软件包_41

看见上图的红框了没?点它开始创建一个新的CAB安装包文件,弹出下面的界面
DIY及OEM包制作 _上图 DIY及OEM包制作 _软件包_43

在上面红框中输入软件出产的机构名称比如"HTC"和软件的名称比如"钻石拨号面板",然后点绿框中的"下一步"
DIY及OEM包制作 _上图 DIY及OEM包制作 _制作_45
选择"允许程序安装到任何设备",然后"下一步"
DIY及OEM包制作 _上图 DIY及OEM包制作 _文件_47
然后选择"允许安装到任何处理器",然后
"下一步"
DIY及OEM包制作 _上图 DIY及OEM包制作 _OEM_49
然后点"完成",再回到
WinCAB.Manager的界面
DIY及OEM包制作 _上图 DIY及OEM包制作 _文件_51
注意上面变色条是默认安装路径,就是指你所在的软件的文件信息安装到哪,如果我们需要安装到Windows\下,则可以右键点击该变色条
DIY及OEM包制作 _上图 DIY及OEM包制作 _文件_53
%CE1%是指Windows\下,我们直接删除中间的那层目录www.52dopod.net
DIY及OEM包制作 _上图 DIY及OEM包制作 _软件包_55
然后点"应用""保存"后回到
WinCAB.Manager界面
DIY及OEM包制作 _上图 DIY及OEM包制作 _软件包_57
然后点左侧的"文件",右键点击,在弹出的界面里点"添加"
http://hi.baidu.com/xulihanghai/blog/item/9d0701da8e3d0b6fd1164ef2.html