|
我理解的XP Embedded 详细开发文档 ,请大家指点。。
---------------------------------------------------------------------------------------------------------------------------
XP Embedded 开发文档
1. 准备工作
首先做一些硬件方面的准备:至少需要一台刻录机和两块硬盘。第一块硬盘就是操作系统所在的硬盘,对分区没有什么特殊要求,但操作系统必须是Windows 2000/XP/Server 2003。第二块硬盘是制作光盘的关键,此盘中的分区数量不得大于4个,并且要保留至少8MB未分区空间,第一个分区为主分区,分区格式为FAT16,容量必须小于一张光盘的容量(650MB或700MB),根据我们这次讲解的内容计算,分成300MB即可。所有分区工作都可在Windows中完成,这里不再赘述,分完区千万不要忘记激活第二块硬盘的主分区(下文中称该主分区为“目标区”,第二块硬盘为“目标盘”,第一块硬盘为“系统盘”)。
分好区后,将“C:\Program Files\Windows Embedded\utilities\”中的“BOOTPREP.exe”拷贝至目标区,由于这是一个16位程序,所以必须在DOS下运行。重启电脑,进入BIOS(一般是按“Del”键或“Ctrl+Alt+Esc”组合键),将系统盘设为“None”(当然,也可以关闭电脑,拆下系统盘),再设置首先从软盘或光盘启动(视你想用哪种方法启动而定),保存退出。使用Win98光盘或启动软盘引导至DOS界面下,输入“C:”,然后回车进入C盘,也就是目标区,再输入“BOOTPREP”并回车,按两次“Y”确认后,目标盘设置完成。
2.创建“EnableAutoLayout”组件并导入
①打开开始菜单中的“Component Designer”,在打开的程序界面中选择菜单“File”→“New”创建一个新的“sld”文件。
②展开窗口左侧的“Windows XP Embedded Client (x86)”目录,并在“Components”目录上单击右键,选择“Add Component”。
③在右侧新建窗口的“Name”区内输入一个名称,例如“EnableAutoLayout_Settings”(图3)。
④右键单击左侧窗口中的“Registry Data”,选择“Add”→“Registry Data”,在弹出的“Add Component Registry Resources”对话框中分别填写以下值(图4):
Root: HKEY_LOCAL_MACHINE
Key name: SOFTWARE\Microsoft\ Windows\CurrentVersion\OptimalLayout
value name: EnableAutoLayout
Type: REG_DWORD
value: 0
⑤选择“Default”单选框,按“OK”回到主窗口,选择“Flie”→“Save”保存为“EnableAutoLayout.sld”,下面将该文件导入数据库。
⑥在开始菜单中选择“Component Database Manager”,在“Database”标签窗口中选择“Import”(图5)。在弹出对话框的“SLD file”一栏中找到刚刚保存的“EnableAutoLayout.sld”文件。
⑦最后选择“Import”开始导入组件(图6),导完后关闭所有对话框。
3.创建“Target hardware device drivers”组件并导入
①进入目录:C:\Program Files\Windows Embedded\utilities\,执行“tap.exe”,很快便在同一目录中生成一个“devices.pmq”文件。
②在开始菜单中选择“Component Designer”,在弹出窗口中选择“Flie”→“Import”,导入“devices.pmq”文件(导入时间较长,图7)。
③导入完毕,选择窗口左侧的“Components”→“devices”,在右侧窗口的“Name”文本框中填写“My devices-hardware”(图8)。
④单击右侧窗口中“Prototype”栏旁的“Browse”按钮,在弹出窗口中选中“Software”→“Test&Development”→“Selector Prototype Component”(图9)。按“OK”回到主窗口,选择“Flie”→“Save”保存文件为“Mydevices.sld”。
⑤按第2步中的“⑥”和“⑦”两个步骤将“Mydevices.sld”导入到数据库。
----------------------
⑥在开始菜单中选择“Component Database Manager”,在“Database”标签窗口中选择“Import”(图5)。在弹出对话框的“SLD file”一栏中找到刚刚保存的“Mydevices.sld”文件。
⑦最后选择“Import”开始导入组件(图6),导完后关闭所有对话框。
-----------------------
4.创建El Torito实时运行镜像(El Torito run-time image)
①在开始菜单中选择“Target Designer”,在弹出窗口中选择“File”→“New”,命名为“My XP Embedded”后按“OK”(图10)。
②“Target Designer”的窗口共分为4部分,上面左侧窗口中显示所有组件的列表,先前导入的“Enable AutoLayout_Settings”和“My devices-hardware”组件就放在根目录下。中间窗口中显示新建的“My XP Embedded”系统的组件列表,此时还没有任何组件。右侧窗口则用于显示“My XP Embedded”系统组件的属性和设置窗口。下面的大窗口显示制作信息,有“Tasks”、“Messages”和“Debug”3个标签(图11)。
③双击左侧窗口中的“EnableAutoLayout”和“My devices-hardware”组件,将它们添加到中间的“My XP Embedded”窗口中。
④展开左侧窗口中的“Design Templates”,双击添加“Windows-based Terminal Professinal”组件,这个组件中包含了一个最小化XP Embedded所必需的基本组件。
⑤展开左侧窗口中的“Software”→“System”→“Storage & Flie System”→“Infrastructure”→“Flie Systems”,双击添加“FAT”组件。再展开左侧窗口中的“Software”→“System”→“Storage & Flie System”→“Applications”,双击添加“FAT format”组件。这一步是为实时运行镜像设置文件系统。
⑥展开左侧窗口中的“Software”→“System”→“System Services”→“Base”,双击添加“El Torito CD”、“EWF NTLDR”和“Enhanced Write Filter”组件。然后展开中间窗口中的“Enhanced Write Filter”组件,选择“Settings”,在右侧窗口中将“Start EWF Enabled”复选框中的对勾清除(图12)。
⑦展开左侧窗口中的“Software”→“System”→“User Interface”→“Shells”,双击添加“Explorer shell”组件。再展开“Windows Shells”子目录,双击添加“User Interface Core”组件,并在其“Settings”窗口中选中“Show Run on Start Menu”一项(图13)。
可以根据需要选择更多的选项:
Show Control Panel on Start Menu
Show My Computer on Start Menu
不要选择的开始菜单项:
Prohibit Access to Hot Keys
Prohibit Access to Control Panel
⑧展开左侧窗口中的“Software”→“System”→“Management”→“Applications”,双击添加“EWF Manager Console Application”组件。再展开“Software”→“System”→“International”→“Infrastructure”,双击添加“Chinese - Simplified Language Support”。
重要操作:
选中顶端Settings,这时右边的属性设置面板会显示如下可以设置的选项 。
在第一个设置Run-time Image Licensing点击Settings输入你的有效PID
在Target Devices Settings下面,点击Show,显示详细的选项
设置下列的配置信息:
Boot Drive = C:
Windows Folder = D:\Windows (也可以改为其他的不超过八个字符的任意名字比如:C:\EMBEDDED 好处是可直接复制到C盘设置双启动)
Program Files Folder = D:\Program Files (也可以为C:\EMBEDDED\Program Files)
Documents and Settings folder = D:\Documents and Settings (也可以为C:\EMBEDDED\Documents and Settings )
Boot ARC path = multi(0)disk(0)rdisk(0)partition(2) (设置为C:\EMBEDDED 把前面的2改成1,必须改否则不会启动)
其他选项保持默认设置。
------------------------------------------------------------
⑨至此添加组件工作完成,下面检验工作成果,选择菜单“Configuration”→“Check Dependencies”开始从属性检查(时间比较长),没有问题的话会报告“No errors or warnings”(图14)。下面就可以建立实时运行镜像了:选择“Configuration”→“Build Target Image”,在弹出窗口中设置镜像存放位置,然后按“Build”开始建立镜像(镜像大约需占用135MB硬盘空间,图15)。
⑩打开存放镜像的文件夹(默认为:D:\Windows Embedded Images\),将其下所有文件及目录拷贝至目标区。
5.建立pre-FBA CD
现在就可以用目标区中的文件创建光盘镜像了,用这个镜像刻录的CD被称作pre-FBA CD,它并不是我们最终需要的光盘,所以建议用CD-RW盘片刻录。
①进入目录:C:\Program Files\Windows Embedded\utilities\,执行“Hd2iso.exe”,这是一个32位的命令行程序,有类似“Fdisk”的文字菜单(图16)。
②按“1”键选择“Create an ISO-9660/ELTORITO bootable image file.”进入ISO镜像创建菜单(图17)。
③按“2”键选择“Set physical drive.”,界面中会显示出电脑中所有的硬盘,编号从“0”开始。目标区位于第二块硬盘,所以该硬盘的编号应该是“1”,按“1”键选择“\\.\physicaldrive1”后退回至上一级菜单(图18)。
④按“3”键选择“Select partition(s)”进入选择分区菜单 。按“1”键选择“BOOTABLE, BIGDOS, 322MB [Not Selected]”,选择后中括号内的“Not Selected”变为“Selected”(图19),然后按“P”键返回上一级菜单。
⑤按“4”键选择“Set image file path”。即存放光盘镜像的位置,存放该镜像的分区至少要有700MB剩余空间,输入路径及文件名,如“G:\xpos.iso”(图20),按回车返回上一级菜单。
⑥按“5”键选择“Advanced Options”。进入高级设置界面(图21),其中必须要设置的项目只有一个:“Specify disk signature”。按“2”键进入该项设置,在这里需要输入一串数字,启动“Target Designeras”,展开“El Torito CD”组件,在其设置项中就有我们需要的那串数字(图22)。输入数字后回车退至上一级菜单,该值自动转化为16进制数字。按“P”键退出高级设置菜单。
⑦按“6”键选择“Create Image to package the ISO image”开始创建光盘镜像,此过程需要较长时间,创建完毕后按“Q”键退出。
⑧用Nero Burning ROM或其他刻录软件将制作好的镜像刻到CD-RW盘片上,至此“pre-FBA CD”制作完毕。由于Windows无法识别这个镜像中的文件格式,所以查看光盘时内容空空如也,但322MB的容量可以显示出来。
6.引导硬盘上的El Torito Run-Time镜像
当pre-FBA CD制作完毕后,就可通过它引导目标硬盘上的El Torito Run-Time镜像了。关机卸下系统硬盘(在BIOS中关闭系统硬盘亦可),在BIOS中将启动方式设置为从光盘启动,并将pre-FBA CD放入CD-ROM驱动器中。系统首先从pre-FBA CD启动,加载相关信息之后,便把“权力”转让给硬盘中的镜像继续完成引导,这个引导过程中系统会不断从pre-FBA CD中读取信息,完成XP Embedded的配置,这个过程被称为First Boot Agent(FBA),要经过两次重启才能完成。另外,Enhanced Write Filter(EWF)也在这个阶段开始工作并创建一个临时配置分区(图23)。
进入XP Embedded界面后,需要确定EWF的状态,下面的操作均在XP Embedded系统内完成。
①确认所有EWF Volume的配置情况,在“开始”→“运行”中输入CMD并回车,调出命令提示符界面。然后键入“Ewfmgr.exe”,如果EWF Volume配置正确,则会显示EWF Volume的情况。
②确认C分区是否为受EWF保护的分区,在“命令提示符”界面中输入“Ewfmgr C:”,如果配置正确,则会显示Protected Volume的信息。
④选择“开始”→“程序”→“Windows 资源管理器”。查看你的系统中是否包括磁盘“El Torito CD”(实际上就是光驱中的pre-FBA CD,不过它在XP Embedded中被当作卷名为“El Torito CD”的磁盘)和目标区。
⑤如果上述检查都正常,那么你就可以对这个El Torito Run-Time镜像进行更多的定制了,如增加应用程序等,增加软件的方法和在WinXP中安装软件的方法一样,很简单吧?
我的理解Embedded在生产环境中的部署到这里就完成了,不知道我的理解是否正确,请大家指点。。。。。。。。。。 |
|