使用 ICE编写应答文件实现WES7系统无人值守自动安装
扫描二维码
随时随地手机看文章
名词解释:
WES7:Windows Embedded Standard 7的简称。
ICE:WES7的主力开发工具,全称Image Configuration Editor,主要用于完成应答文件的编写。
IBW:WES7的主力开发工具,全称Image Build Wizard,主要用于引导目标系统启动。
实验环境:
建议使用两台实体PC,确认ICE已正确安装至开发机。
本文旨在通过动手实验由浅入深地介绍WES7中Unattended Answer File(无人值守应答文件)的编写,通过对比的方法对应IBW中常见的各选项来理解无人值守的意义。
1、 使用TAP.exe在目标机上提取其硬件信息,得到devices.pmq文件。
2、 在开发机上打开ICE,在Answer File区右键选择New Answer File,在DS区域中找到Templates-IBW-Thin Client.xml模板,右键选择Add to Answer File。
3、 对应IBW时的EULA界面,我们找到AnswerFile里的Product-Operating System-Foundation Core-Windows Embedded Edition-Setup_x86-UserData-AcceptEula,将Filter置为1Windows PE之后,将AccpetEula的值设为True。
4、 IBW中的下一步是选择模板,刚才在第二步已做过。
5、 IBW中的下一步是选择语言和其他相关,我们需要在Answer File里找到System-Foundation Core-Windows Embedded Edition-International-Core-WinPE_x86,找到SystemLocale置为zh-CN,找到International-Core_x86-UILanguage,将其值设为zh-CN。
6、 IBW中的下一步是驱动和特征的综述,勾选Modify Drivers,勾选Modify Features,点击Next。下一步是找到并选择设备驱动,通过选择Choose a .pmq file来找到我们提取到的devices.pmq文件。此步在ICE中对应File-Import-Import PMQ…, 导入pmq文件,会看到一些相关组件会自动导入到应答文件中。
7、 IBW中的下一步是确认需要导入的驱动程序,保持默认,下一步是在选择packages页面中勾选MediaCenter包。对比ICE环境,在左侧Distribution Share里面找到Packages-FeaturePack-MediaCenter,右键选择Add to Answer File。
8、 IBW中的下一步是点击Resolve Dependencies完成依赖检查,这等同于ICE中的Validate-Add Required and Optional Packages,在Messages区域中出现红色叉的描述,双击打开Resolve Dependencies对话框,图中显示了五类所需的Packages,前四个后面显示Resolved,可以不用理会,最后一个是选择语言的提示,我们勾选Simplified (PRC) Chinese Language Pack,点击OK。再次执行依赖检查,在Messages区域中没有红色叉的消息,说明验证通过。
9、 IBW中接下来是分区界面,要对目标设备的磁盘进行分区、格式化操作。选中目标磁盘,点击Delete全部删除,然后点击New,保持默认,点击应用,然后点击Format。在Ice中的对应关系是这样的,在AnswerFile中找到Product-Operating System-Foundation Core-Windows Embedded Edition-Setup_x86-DiskConfiguration,在Filter中选择1 Windows PE,在DiskConfiguration中右键选择Insert New Disk,展开Disk,DiskID置为0,意为第一块硬盘,在CreatePartition中右键选择Insert New CreatePartition,展开CreatePartition,修改Order为1,Type为Primary,Size设置为比目标磁盘稍微小一点。将DiskConfiguration中的WillShowUI置为OnError。找到ImageInstall-OSImage-InstallTo,将PartitionID置为1,DiskID置为0,进行依赖检查。
10、 IBW中点击Next之后它就开始为我们工作了,等到镜像构建完毕,进入到OOBE界面时,有一些需要我们手动设置的地方。
11、 第一个界面,要输入用户名,对应在ICE中,找到Shell-Setup_x86,将Filter置为7 OOBE System,我们在UserAccounts里面右键点击LocalAccounts,选择Insert New LocalAccount,展开LocalAccount,Name输入test,DisplayName输入test,Group里面输入Administrators,password-value输入test,在Autologon里面找到Username输入test,enabled改为true,password-value输入test。
12、 第二个界面,输入序列号界面,对应ICE中的Setup_x86-UserData-ProductKey-WillShowUI置为OnError,将OOBE-HideEULAPage置为True,接下来会弹出评估版的警告信息。
13、 接下来选择保护计算机的类型,一般选择”使用推荐设置”,对应OOBE-ProtectYourPC为1。
14、 如果设备上有无线网卡,那么还会弹出选择无线网络的界面,对应ICE中找到HideWirelessSetupInOOBE置为True。
15、 接下来会弹出设置时间界面,在ICE中找到OOBE-SkipUserOOBE置为True,接着再把SkipMachineOOBE设为True。
16、 在选择计算机当前的位置界面,我们选择公用网络,在ICE中的位置是NetworkLocation置为Other。
17、 用IBW构建WES7镜像的话,到此就全部设置完毕了,系统会进入桌面。
18、 但是用ICE的来构建无人值守的WES7镜像,我们还有一些工作要做。对当前的应答文件做一下依赖检查,确认没有错误消息之后使用Tools-Create Media-Create IBW Image From Answer File,选择一个本地目录c:\testWES7Image,创建好之后,到WES7所在位置中把DS目录全部复制到c:\testWES7Image中。
19、 接下来用ocsdimg将刚才的目录创建为可启动光盘,使用管理身份运行命令提示符,具体命令如下:C:\Program Files\Windows Embedded Standard 7\Tools\x86>oscdimg.exe -m -o -n -bc:\testWES7Image\BOOT\etfsboot.com c:\testWES7 c:\ testUnattendInstall.iso,这表示将我们创建好的WES7目录创建为可启动光盘,其名字是testUnattendInstall.iso。更多的参数可以通过帮助手册来查看。
然后可以将该iso文件刻录成光盘,再将光盘插入目标设备中,从光盘启动,接下来就可以等待大功告成。无人值守所需的所有操作都已经在应答文件中完成,无需人为干预直接进入桌面,这就是无人值守安装的意义所在。