无忧启动论坛

 找回密码
 注册
搜索
一次装机 终生领工资最纯净的「微PE装机优盘」UEPON大师作品卡瑞飞系统和装机二合一超级U盘
广告位出租系统gho:最纯净好用系统下载站广告联系 QQ:184822951 微信:wuyouceo
查看: 197251|回复: 238

Windows XP Embedded 精华文章汇总

    [复制链接]
发表于 2005-7-11 12:46:57 | 显示全部楼层 |阅读模式
Windows XP Embedded 精华文章汇总

[ 本帖最后由 打狗协会理事 于 2007-2-20 05:11 PM 编辑 ]
 楼主| 发表于 2005-7-11 12:55:10 | 显示全部楼层

Windows XP Embedded 精华文章汇总

Microsoft Windows XP
       OEM 预安装工具包 (OPK)
  自述文件 (RTM)
   2001 年 8 月
本文档中的信息(包括 URL 和其他 Internet 网站引用)可能变动,恕不另行通知,
并仅用于提供信息目的。使用此文档的全部风险或后果由用户承担,
Microsoft Corporation 不做任何书面的或隐含的保证。除非另行说明,本文档中涉
及的公司、组织、产品、人物和事件均属虚构。与任何真实的公司、组织、产品、
人物或事件无关,如有雷同,纯属巧合。遵守任何适用的版权法是用户的责任。在不
限制版权所辖权利的前提下,未经 Microsoft Corporation 的明确书面许可,无论
出于何种目的,均不得以任何形式或借助任何手段(电子、机械、影印、录音或其他
手段)复制或传播书中的任何部分,或将其存储于或引入检索系统。  
Microsoft 可能拥有本文档内容的专利、专利申请、商标、版权或其他知识产权。
除了任何 Microsoft 授权许可协议所提供的明确书面许可,拥有本书并不赋予您
任何有关这些专利、专利申请、商标、版权或其他知识产权的许可。

(c) 2001 Microsoft Corporation。保留所有权利。

Microsoft、MS-DOS、Windows 和 Windows NT 是 Microsoft Corporation 在美国
和/或其他国家(地区)的注册商标或商标。  
代码名“Windows 2002 [___]Server”在这些产品的最终发布之前可能更改。本文档
中对这些产品或产品家族的引用只是代码名。

本文档中提到的真实公司和产品的名称可能是其各自所有者的商标。
==============
如何使用本文档
==============
要在 Microsoft Windows“记事本”中查看此自述文件,请最大化“记事本”窗口。
在“格式”菜单上,单击“自动换行”。  

要打印此自述文件,请在“记事本”或其他字处理器中打开该文件,然后在
“文件”菜单上,单击“打印”。
=====
目录
=====
1.0 简介
2.0 已知问题
3.0 文档更正
---------
1.0 简介
---------
此文档提供了关于 Microsoft Windows XP Home Edition 和
Windows XP Professional OEM 预安装的最新信息。
   
关于此文档中列出的问题和更正的详细信息,请联系您的技术帐户管理员,或访问
Microsoft OEM 网站:https://oem.microsoft.com/。
OPK 用户指南 (Opk.chm) 的“预安装要求和自定义准则”部分列出了允许的
Windows 软件 OEM 自定义。关于实现这些自定义的进一步详细信息,请参阅 OPK
用户指南的其他部分。  
Windows 预安装参考 (Ref.chm) 文档中描述了在预安装 Windows 时使用的不同
应答文件的语法。文档的这一部分同时用于 OEM 和企业管理员。允许的 OEM
自定义集仅对应于 Windows 预安装参考中描述的应答文件项的子集。详细信息,
请参阅 Opk.chm 中的“预安装要求和自定义准则”或联系您的帐户管理员。

-------------
2.0 已知问题
-------------
这是此版本的 Windows XP 发布时的已知问题的列表。
  
* 如果在属于工作组的计算机上运行“安装管理器”,则不能通过网络访问配置集,
不管使用什么用户凭据访问分发共享。  
解决方案 #1:在属于域的计算机上运行“安装管理器”。

解决方案 #2:使用“安装管理器”创建有所要求权限的分发共享(例如,允许
通过 Guest 帐户或某个特定的用户帐户访问)。在“我的电脑”中,右键单击
分发文件夹(例如,C:\OPKTools),选择“共享和安全”。在“共享”选项卡上,
选择“允许网络用户更改我的文件”。  
* 使用 Winbom.ini 文件的 [OEMRunOnce] 部分安装使用基于 InstallShield
安装程序的应用程序时,必须将“-SMS”开关(没有引号)添加到命令行。
“-SMS”必须大写。此命令行选项确保了在处理 [OEMRunOnce] 部分中的下一项
之前,安装程序所创建的进程完成了它的操作。
  
* 用于 Windows XP Step by Step Interactive (SBSI) 的安装程序是基于 InstallShield 的
安装程序。安装 Windows XP Home Edition 的英文版 SBSI 的特定命令是:
   "Installing Step by Step Interactive",
"""\\<ComputerName>\OPKTools\Lang\Eng\SBSI\Per\Setup\Setup.exe""
-SMS -S -f1""\\<ComputerName>\OPKTools\Lang\Eng\SBSI\Per\Setup\
Silent.iss"""
安装用于 Windows XP Professional 的英文版的 SBSI 的特定命令是:
   "Installing Step by Step Interactive",
"""\\<ComputerName>\OPKTools\Lang\Eng\SBSI\Pro\Setup\Setup.exe""
-SMS -S -f1""\\<ComputerName>\OPKTools\Lang\Eng\SBSI\Pro\Setup\
Silent.iss"""
注意:在命令行中,在“Step by Step Interactive”之后有 3 组引号,而在
      Setup.exe 后只有 2 组引号。在 -f1 后也有 2 组引号,并且在每个末
      端都有 3 组引号。此命令行区分大小写,并且 -SMS 必须大写。
  
对于英文版本的 Windows,“安装管理器”将自动在 Winbom.ini 的
[OEMRunOnce] 部分中包括此命令。  
非英文版的 Windows XP 循序渐进交互程序在语言特定的 Microsoft Windows XP
循序渐进交互 CD 中,和 OPK 打包在一起。如果 Microsoft 循序渐进交互程序
可用于正在预安装的 Windows 版本,则必须安装它。

如果 <drive> 中有语言特定的 SBSI CD,则安装非英文版本的 SBSI 的特定命
令是:
<drive>\Setup\Setup.exe -SMS -S -f1<drive>\Setup\Silent.iss  
* 在“安装管理器”中,将“预设时区选择”值从“<使用默认>”更改为您客户
的时区。如果将其保留为“<使用默认>”,则客户必须手动将时区设置从
“(GMT -08:00) 太平洋时间(美国和加拿大);蒂华纳”更改为本地时区。
  
* 从 WinPE 安装配置集时,计算机似乎锁上了。它并没有被锁上;因为需要延时
来复制作为安装一部分的整个 i386 目录。将 i386 目录复制到目标计算机是许
可协议的要求。

解决方案:等待复制目录。
  
默认将这些文件复制到 C:\i386 目录。如果将 SourcePath 项添加到 Winbom.ini
的 [ComputerSettings] 部分,如下所示:
[ComputerSettings]
SourcePath=%windir%  
则在“工厂”过程中,i386 目录将被移动到 SourcePath 指定的位置。

* 如果从安装删除 DllCache 的内容,则必须设置到本地 i386 目录的有效源路径。
您可以在 Winbom.ini 的 [ComputerSettings] 部分中使用 SourcePath 项来达
到此目的。要使 Windows 文件保护正常操作,必须将 DllCache 文件夹保留为空。
  
* 在 Windows XP Home Edition 和 Windows XP Professional 中,OEM 无法在
Windows 欢迎中关闭“计算机名称”页。这是由设计决定的。
  
* 在 Windows XP Home Edition 中,如果完成运行 Windows 欢迎,然后运行
命令 Sysprep -reseal,则在 Windows 欢迎中创建的帐户在您(或最终用户)
下一次运行 Windows 欢迎时仍然可见。此所有者帐户不能被 Sysprep 删除。
  
解决方案:在制造过程中跳过 Windows 欢迎。或者在 Oobeinfo.ini 文件的
[StartupOptions] 部分中包括 OEMAuditBoot 项,或者在Windows 欢迎的
第一页按 CTRL + SHIFT + F3。

* 在 Windows XP Home Edition 中,如果完成运行 Windows 欢迎,然后运行
命令 Sysprep -factory,并以“工厂”模式重新启动计算机,则在 Windows
欢迎中的“欢迎”页,操作系统似乎被锁定了。
  
解决方案:在制造过程中跳过 Windows 欢迎。可以在 Oobeinfo.ini 文件的
[StartupOptions] 部分中包括 OEMAuditBoot 项,或者在 Windows 欢迎的
第一页按 CTRL + SHIFT + F3。作为选择,以“工厂”模式重新启动计算机时,
请按 ALT + TAB 将焦点返回 Windows 欢迎中的“欢迎”页。必须使用在第一
次运行 Windows 欢迎过程中创建的帐户登录。

* 在配置了将显示在“开始”菜单上的 OEM 链接以后,可以使用命令
Sysprep -factory 按在“工厂”模式过程中处理的 Winbom.ini 文件中的指定
修改 OEM 链接的属性。但是,一旦创建了 OEM 链接就不能删除它。
  
解决方案:进行 Windows XP 的干净安装。  
* 如果不重新安装,这可能会更改“帮助和支持”中显示的 Oeminfo.ini 的
内容。   
解决方案:手动编辑注册表来更改标识 OEM 的文本。
  
请使用以下注册表修改:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PCHealth\HelpSvc\OEMInfo]
"Manufacturer"="oem_name"
"Model"="model_name"
"Text"="For Support please call:&#35;BR&#35;Usa 1-800-555-1212&#35;BR&#35;
   Europe 1-800-333-1212&#35;BR&#35;Email : Support@oem_name.com&#35;BR&#35;"
每个 &#35;BR&#35; 将被转换为一个新行。

要更改 Oemlogo 位图,请用同样名称的另一幅位图替换 C:\Windows\system32
中的 Oemlogo.bmp。

* 不使用 Sysprep.inf 而运行 Sysprep 将导致在 Windows 欢迎后 Unattend.txt
中的项被重新处理。这些项通过 Unattend.txt 被添加到 &#36;Winnt&#36;.sif。
解决方案(最安全的方法):从 &#36;Winnt&#36;.sif 手动删除通过 Unattend.txt 添加
的任何项。
  
解决方案:(最简单的方法):完全删除 &#36;Winnt&#36;.sif。
  
* 在 C: 驱动器以外的驱动器(例如D:\Windows)上的 Windows 安装上运行
Sysprep 时可以使安装不可用。

解决方案:仅在位于 C: 驱动器的 Windows 安装上运行 Sysprep。
  
* 如果 Factory.exe 没有与 Sysprep.exe 在同一个文件夹中,则命令
sysprep -factory 不会运行。  
解决方案:将 Factory.exe 放在 Sysprep.exe 所在的文件夹中。
  
* 在任何 OPK 帮助文件中打开可展开的链接时可以导致“Error in the DLL”
消息。
这仅在以下条件都满足时才会发生:
  -- 操作系统是 Windows XP。
  -- 安装了零售版本的调试器(例如 Visual Studio 调试器)。
  -- Internet Explorer 中“Internet 选项”上的“脚本调试”被启用。  
解决方案:禁用脚本调试或卸载脚本调试器。  
* Windows 2000 和 Windows XP 之间的驱动程序分级方案不同。当多个驱动程序
可用于某个设备时,驱动程序分级方案将决定加载哪个驱动程序。将基于驱动程序
是否签名,以及它们匹配设备的硬件 ID (HW ID) 的程度来分级驱动程序。以下
列表按从高到低的顺序概述了 Windows 2000 和 Windows XP 的驱动程序分级方案:
Windows 2000 驱动程序分级方案:
1. 四部分 HW ID 完全匹配驱动程序的签名驱动程序。  
2. 四部分 HW ID 完全匹配驱动程序的未签名驱动程序。
3. 二部分 HW ID 匹配驱动程序的签名驱动程序。  
4. 二部分 HW ID 匹配驱动程序的未签名驱动程序。  
Windows XP驱动程序分级方案:
1. 四部分 HW ID 完全匹配驱动程序的签名驱动程序。  
2. 二部分 HW ID 匹配驱动程序的签名驱动程序。  
3. 四部分 HW ID 完全匹配驱动程序(有 NT 修饰的 INF 部分)的未签名驱动程序。  
4. 二部分 HW ID 匹配驱动程序(有 NT 修饰的 INF 部分)的未签名驱动程序。  
5. 四部分 HW ID 完全匹配驱动程序(有未修饰的 INF 部分)的未签名驱动程序。  
6. 二部分 HW ID 匹配驱动程序(有未修饰的 INF 部分)的未签名驱动程序。  
* 在 Windows XP 中,包括用于 ATAPI 磁盘驱动器的 48 位逻辑块地址 (LBA)
支持,允许跨越 137 GB 障碍的能力。默认情况下此特性不打开,但 OEM 可以
打开它。OEM 负责测试和确认他们自己的启用 48 位 LBA 的系统。
   
此特性将在 Windows 2002 Server 版本和 Windows XP 客户服务包中启用,直到
其他 PC BIOS 和驱动器可用为止。
  
要启用此特性,请在 Sysprep.inf 的 [Unattended] 部分添加一项,如下所示:
[Unattended]
EnableBigLba=Yes  
最终用户可能在没有正确的 BIOS 支持大于 137 GB 硬盘驱动器的情况下尝试启
用 48 位 LBA 注册表设置。在这种情况下,只有硬盘开始的 137 GB 空间可以
访问。不能使用驱动器的其他空间。如果用户在没有 48 位 LBA 兼容的 BIOS
和大于 137 GB 的驱动器的系统上启用 48 位 LBA 注册表设置,则不会影响该
系统。该驱动器将继续象标准的硬盘驱动器那样工作。
  
* 不修改 NVRAM 就可以从硬盘引导 64 位 WinPE。
   
创建一个名称是 &#36;WINPE&#36;.&#36;&#36;&#36; 的空文件并保存在 Setupldr.efi 所在的同一个
目录中。默认目录是 ESP 的根目录。使用在适当位置的空文件,Setupldr 将在
开始四个硬盘的所有分区上搜索 WinPE 映像。要成为可引导的,WinPE 映像必
须在名称是 \Winpe 的目录所在分区的根目录,\Winpe 包含一个 \ia64 子目录,
格式为:<%systemroot%>\Winpe\ia64。   
Setupldr 将从找到的第一个 WinPE 映像引导。
  
注意:如果没有 WinPE 安装,或 &#36;WINPE&#36;.&#36;&#36;&#36; 文件丢失,则 Setupldr 将恢复
      到它的常规行为,这将导致显示 Txtsetup.sif 丢失错误消息。  
>> 创建可引导的 64 位 WinPE 映像
1. 创建一个 64 位 WinPE 映像,然后将其保存到 \Winpe 目录。  
2. 请使用此命令为 ESP 设置驱动器号:mountvol y: /s
3. 请使用此命令将 Setupldr.efi 从 C:\Winpe\ia64\Setupldr.efi 复制到 ESP
   的根目录:copy C:\Winpe\ia64\Setupldr.efi y:
4. 创建名称是 Y:\&#36;WINPE&#36;.&#36;&#36;&#36; 的空文件。
5. 重新引导至 EFI 外壳。
6. 从 ESP 运行 Setupldr。  
* 默认情况下不支持多语言 WinPE 版本。  
使用以下技术中的一种,您可以启用阿拉伯语和希伯来语支持:

   * 从英文 Windows XP Professional CD 创建 WinPE 之前,请修改 Config.txt
     的 [RegionalSettings] 部分中 LanguageGroup 的值。
     要将阿拉伯语支持添加到英文版本的 WinPE,请设置
         LanguageGroup=1, 13
     要将希伯来语支持添加到英文版本的 WinPE,请设置
         LanguageGroup=1,12
   - 或 -

   * 从阿拉伯或希伯来版本的 Windows XP Professional 创建 WinPE 之前,请
     修改 Config.txt 的 [RegionalSettings] 部分中 Language 的值。  
     
     如果从阿拉伯版本的 Windows XP Professional CD 启动,请设置
         Language=0x401。
     如果从希伯来版本的 Windows XP Professional CD 启动,请设置
         Language=0x40d。
-------------
3.0 文档更正
-------------
* Windows 预安装参考和 OPK 用户指南中的主题“自定义开始菜单和 OEM 链接”
写错了 Winbom.ini 的 [OEMLink] 部分的语法。
  
OEMBrandLinkIconTip 和 OEMBrandInfoTip 是 [OEMLink] 部分中的无效项。
正确的项是 OEMBrandLinkInfoTip。

[OEMLink] 中项的完整集合为:
OEMBrandIcon
OEMBrandLink
OEMBrandLinkInfoTip
OEMBrandLinkText  
下面是一个示例:
[OEMLink]
OEMBrandIcon=%windir%\System32\OemLinkIcon.ico
OEMBrandLink=%windir%\System32\OemLink.htm
OEMBrandLinkInfoTip="Click here to learn more about Fabrikam."
OEMBrandLinkText="Welcome to Fabrikam"

* 在 OPK 用户指南中 (Opk.chm),关于创建主安装的管理员密码的信息声明密码
可以包含多达 127 个字符。
  
更正:注意密码同样区分大小写。  
* 在 OPK 用户指南中,索引项“WinPE, 创建 CD”链接到了主题“Mkimg 命令”。
  
更正:此项也应链接到主题“创建 WinPE 的自定义版本”。  
* 在 OPK 用户指南中,“Mkimg 命令”主题标识了错误的工具来创建 64 位可
引导映像。该文本声明在使用 Mkimg 时,通过使用 Dskimage 可以选择进一步
自定义 WinPE 64 位版本。  
更正:使用 Mkimg 创建 64 位可引导映像时,请使用 Oscdimg.exe 创建自定义
WinPE 映像的.iso 文件。

* 在 OPK 用户指南的“Oscdimg 命令行选项”主题中,El Torito 引导扇区文
件示例的位置不正确地引用为 -bc:\directory\cdboot.bin。  
更正:正确的示例是 -bc:\directory\ETFSBOOT.COM。
  
* OPK 用户指南声明印刷的书和任何恢复介质将显示 OEM 名称和署名;恢复介质
不应该显示 Microsoft 注册的产品名称或徽标。
  
更正:OEM 可以在恢复媒体上包括文字“Microsoft Windows”。
  
* OPK 用户指南声明 OEM 链接只可以链接到某个 .htm 文件。
   
更正:OEM 链接或者可以链接到某个 .htm 文件,或者链接到某个 .exe 文件。

* 在 OPK 用户指南中,流程图“Windows 欢迎完全安装流程图”声明
“管理员密码”和“加入域”页是要求的。
  
更正:这些页在 Windows 欢迎中是可选的。  
* OPK 用户指南声明在“安装管理器”的“署名机会”页,只有 .gif 是
Windows 欢迎中支持的 OEM 徽标文件格式。
更正:Windows 欢迎徽标还支持 .jpg、.bmp 和 .png 文件格式。  
* 在 OPK 用户指南中,主题“测试和调试 Windows 欢迎”没有描述重置和
测试 Windows 欢迎的首选方法。

更正:测试 Windows 欢迎的首选方法是对安装运行 Sysprep -reseal,然后
使用第三方工具创建该安装的映像。每次希望测试 Windows 欢迎时,请在目
标计算机上重新安装基本映像,将已更新的 Oobeinfo.ini 文件放在目标计算
机上,然后启动计算机。这种方法能更精确地模拟真实的最终用户体验。
   
* 在 OPK 用户指南中,在主题“安装 64 位版本的 Windows”中,用于安装
Windows XP 64 位版本更新版本的命令行不正确。
  
该文本为:
键入以下命令,用分配给 CD-ROM 驱动器的驱动器号替换“e”(如果必要):
e:\ia64\winnt32.exe\。
   
更正:从命令行删除末尾斜线。正确的命令是“e:\ia64\winnt32.exe”。
  
* Sysprep 有一个附加的命令行选项没有包括在 Opk.chm 中。该命令行选项是
-bmsd。  
如果 [SysprepMassStorage] 部分标题出现在 Sysprep.inf 中,并且您运行命
令 Sysprep -bmsd,则 Sysprep 将用项 <Plug_and_Play_ID>=
<path_to_device_inf_file> 预设 [SysprepMassStorage],这些项对应于在
Machine.inf、Scsi.inf、Pnpscsi.inf 和 Mshdc.inf 中指定的 PnP ID。
Sysprep 仅创建海量存储设备的列表;它不会在关键的设备数据库中安装这些
设备或完成任何其他处理。   
在此安装上运行 Sysprep -reseal 或 Sysprep -factory 之前,您可以将这些
项目从 [SysprepMassStorage] 部分删除。在关键的设备数据库中安装较少的
项能减少此映像重新引导至操作系统所需要的时间。  
不要和任何其他命令行选项一起使用 -bmsd 命令行选项。

* OPK 包括一个新工具 Sys.exe,这没有包括在 OPK 用户指南中。此工具允许您
(从 WinPE)准备有 FAT32 格式化分区的硬盘来引导 Windows 9x 操作系统。
请运行命令“sys /?”了解关于如何使用该工具的信息。此工具不能在 MS-DOS
下工作。  
* 关于预安装和验证签名的驱动程序的信息没有全部包括在 OPK 用户指南中。
   
解决方案:请参阅 OPK CD 上 docs\whitepapers 目录中的
“Preinstalling_Signed_Drivers”白皮书。

* OPK 用户指南不正确地声明在使用项 EncryptedAdminPassword 和
EncryptedDomainAdminPassword 时,OEM 可以使用所包括的 Hashpwd.exe 工具
加密密码。但是,Hashpwd.exe 没有包括在 OPK 中。  
解决方案:要加密管理员密码,请使用“安装管理器”。不支持加密域管理员
密码。  
* 在 Microsoft Windows 预安装参考中,没有包括 Windows 欢迎 API
Tapi.get_CountryID。  
更正:此函数将返回特定国家(地区)的 TAPI ID。语法是 iCountryID =
window.external.Tapi.get_CountryID();
* 在 Microsoft Windows 预安装参考中,没有包括 Oobeinfo.ini 的 [Options]
部分中的 AdminPW 和 JoinDomain 项。

更正:在 Oobeinfo.ini 书中,将以下内容添加到 [Options] 主题:
AdminPW
Value: 0 | 1
Default: 1  
0 在 Windows 欢迎中不包括“管理员密码”页。
1 在 Windows 欢迎中包括“管理员密码”页。  
JoinDomain
Value: 0 | 1
Default: 1  
0 在 Windows 欢迎中不包括“加入域”页。
1 在 Windows 欢迎中包括“加入域”页。
  
* “安装管理器”中,“Shell 设置”下的“[开始] 菜单”路径允许四项,
但 OPK 用户指南声明只允许三项。   
更正:在 [StartMenuMFUList] 部分中最多可以包括四个链接。但是,只有开始
的三个项目出现在“开始”菜单的常用 (MFU) 列表中,除非三个副本中的一个
重复,或替换了预设的 Microsoft 项目。此时,第四个项目也被包括在常用
(MFU) 列表中。   
* 在 Microsoft Windows 预安装参考中,没有包括 Unattend.txt 的
[DCInstall] 部分中的 RemoveApplicationPartitions 项。
   
更正:在 Unattend.txt 书中,将以下内容添加到 [DCInstall] 主题:
RemoveApplicationPartitions
Value: Yes | No
Default: No  

Yes指定将域控制器降级到成员服务过程中删除应用程序分区。
No不要删除域控制器上的应用程序分区。如果域控制器主持了任何应用
程序目录分区的最后一次复制,则必须手动确认这些分区将被删除。
  
要点:如果删除任何应用程序目录分区的最后一次复制,则其包含的分区和数据
      将被破坏。  
* 在 OPK 用户指南中,在主题“自定义开始菜单和 OEM 链接”的
“用 MSN Internet 访问快捷方式替换 MSN Explorer 快捷方式”部分丢失了
一个注释。  
更正:将以下文本添加到“要点”标题下面:只有两个 Winbom.ini 项要求用
MSN Internet 访问快捷方式替换 MSN 快捷方式,它们是 [Components] 部分
中的 IEAccess 项和 [Shell] 部分的 msnexplorer 项。在 Winbom.ini 的
[Components] 部分,不要设置 msnexplr = No。  
* 在 Windows 预安装参考中,[WinPE] 部分中 Restart 项的默认值是“Prompt”。
  
更正:默认行为是退出到命令提示符。此行为不符合用于 Restart 项的特定的值。

* 关于 Factory.exe 如何处理 Winbom.ini 中部分的信息没有包括在 OPK 用户
指南中。   
解决方案:请参阅 OPK CD 上 docs\whitepapers 目录中的
“Winbom.ini and Factory.exe”白皮书。  
* Windows 预安装参考中的 [TerminalServices] 主题不正确地声明默认情况下将
安装“远程桌面”,但在 Windows XP Home Edition 中没有启用,而“远程桌面”
默认情况下在 Windows 2002 Server 操作系统家族中被启用。
更正:“远程桌面”在 Windows XP Home Edition 中不安装,并且默认情况下在
Windows XP Professional 和 Windows 2002 Server 操作系统家族中被禁用。
回复

使用道具 举报

 楼主| 发表于 2005-7-11 12:48:57 | 显示全部楼层

Windows XP Embedded 精华文章汇总

xpe0612这款广为流传的光盘就是采用这种技术制作的,好不容易找到制作方法,但有人说不太好用,还没有进行试验。
首先下载带SP1的XP Embedded评估版,试用期120天。下载地址:http://www.microsoft.com/downloads/details.aspx?FamilyID=257343f0-a931-4a5e-aaef-08f1cd4b0a80&DisplayLang=en,在这里下载的是一个网络安装的客户端,所以只有119kB。执行该程序(XPEFFI.exe),出现提示注册的对话框,选“是”进入下载界面,同时程序会打开一个注册网页,在其中填好带“*”的内容,注意E-mail地址必须是真实可用的,因为XP Embedded的注册码将被发送到这里。通常你很快就能收到带有注册码的E-mail,最多不会超过24小时。再来看看下载界面(图1),在这里可以选择保存位置,设置好后选择“Start Download”即可,一共需下载7个压缩包,总容量603MB,该客户端支持断点续传,所以无论下载出错还是断线都没关系。下载完毕后压缩包将被自动解压至“C:\Program Files\Windows Embedded\Installer”中,容量为627MB。开始安装前,确保“D”区内有3GB可用空间(数据库默认安装在D区中),然后进入“disk1”目录,执行“Setup”开始安装(图2)。
 依次安装“工具”(Tools)、“数据库引擎”(Database Engine)和“数据库”(Database),在某些电脑中安装数据库引擎时可能会报错,提示缺少“强密码”(Strong Password),没关系,只要加参数执行安装程序即可。选择“开始”→“运行”,输入如下内容:"C:\Program Files\Windows Embedded\Installer \disk1\SQLMSDE\setup.exe" SAPWD="1"。“SAPWD”参数用于指定强密码,强密码可随便定义,用“1”即可。
 安装完毕后开始菜单中会增加一个名为“Microsoft Windows Embedded Studio”的菜单项(下文中在开始菜单里所做的选择都在此菜单项中进行的),下面我们就可以开始制作光盘了,请严格按照下面的步骤进行,任何一点疏忽都可能前功尽弃。
 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”导入到数据库。
 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)。
 ⑧展开左侧窗口中的“Software”→“System”→“Management”→“Applications”,双击添加“EWF Manager Console Application”组件。再展开“Software”→“System”→“International”→“Infrastructure”,双击添加“Chinese - Simplified Language Support”。
 ⑨至此添加组件工作完成,下面检验工作成果,选择菜单“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中安装软件的方法一样,很简单吧?
 7.运行“Etprep.exe”
 制作最终的系统光盘前还需要执行程序“Etprep.exe”,这个工具执行如下任务:删除目标盘上在FBA过程中建立的EWF配置分区;交换“El Torito CD”磁盘和目标区的驱动器符号,这一步过后,就无法通过目标区中的“El Torito Run-Time”镜像启动了。
 ①调出“命令提示符”界面,进入“\Windows\system32 ”目录并运行如下命令:etprep /all。
 ②如果操作成功会显示如下文字:
 Deleted EWFpartitions = 1.
 Swapped ElTorito volume drive E: with Boot volume C: .
 ③在执行“Etprep.exe”后,系统会自动重启,由于目标区已经无法引导系统,所以重启后手动关闭计算机。如果没有自动重启,手动关闭机器即可。
 8.制作最终的XP Embedded Bootable CD
 现在可以制作最终的系统光盘了。这个过程与制作pre-FBA CD的过程一模一样,请按“5.”中所述步骤制作最终的光盘镜像。在刻录成CD前,最好使用虚拟PC软件测试一下这个镜像,但要注意只有VMware的虚拟PC软件能正确使用此镜像,微软的“Virtual PC”反而不行,是不是有点讽刺(图24)?进入系统后,查看系统属性,有“嵌入式”的字样,版本为“2002”

点评

这个我一直做到了最后一步,,,可是制作出来的光盘依然不能启动XPE...求科普!  详情 回复 发表于 2013-8-19 13:21
回复

使用道具 举报

 楼主| 发表于 2005-7-11 12:47:42 | 显示全部楼层

Windows XP Embedded 精华文章汇总

Windows XP Embedded 上手指南

作者:MICROSOFT
概述
对于一种开发工具的学习,最重要也最困难的阶段就是概念的建立,只要建立了正确的概念,明白整个系统的体系结构和各种工具作用,剩下的工作就是实际操作,积累经验了,最多不过在需要的时候查一查手册。
本文通过指导读者进行实际操作,一步步地完成一次完整的开发工作,从而帮助读者建立一个清晰明确的概念。
因为我们开发的产品不是普通的软件,而是专用的操作系统,所以需要针对某个特定的硬件平台(目标机)来进行开发;首先需要一个强大的工作站来运行开发环境和开发工具,然后根据目标机硬件配置和软件需求进行开发,开发完成后将做好的操作系统影象文件(Image)与目标机硬件结合,运行系统并测试。

配置开发工作站
首先介绍开发用的工作站,一台标准PC机,硬件配置要求如下:
? ? 操作系统Windows XP Professional
? ? PIII 500MHz 以上(建议1GHz以上)
? ? 256MB 内存 (建议512MB)
? ? 3GB 剩余硬盘空间
对该PC机的配置如下:
? ? 将硬盘设置两个分区
? ? 第二个分区分配为700MB,可以是FAT32格式或NTFS格式(这个分区将包含可启动的Windows XP Embedded Image)
? ? 主分区使用所有剩余的硬盘空间,可以设置为FAT32格式或者NTFS格式
? ? 在主分区中安装Windows XP Professional系统,并安装Windows XP Embedded 开发工具
修改BOOT.ini文件,将下面的代码部分增加到该文件中,可以使这台PC机双重启动,作为开发用的Windows XP Professional系统从分区一启动,而开发好的Windows XP Embedded Image从分区二启动。
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\\Windows
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\\Windows="Microsoft Windows XP Professional" /fastdetect
multi(0)disk(0)rdisk(0)partition(2)\\Windows="Microsoft Windows XP Embeddedd" /fastdetect
安装Windows XP Embedded开发工具
将Windows XP Embedded开发包的CD1放入CD-ROM中,在自动运行的提示中, 按照以下顺序安装XPE开发工具:
? ? Tools Setup:安装XPE开发工具(包括Target Designer, Component Designer, Component Database Manager, 以及其他工具)
? ? Database Engine Setup: 安装SQL Server 2000 Desktop Edition database engine (MSDE)
? ? Database Setup: 安装组件数据库及Repositories
开发工作站的其他配置
在C盘新建一个XPE_Demo目录,用来放置开发中生成的配置定义文件和组件定义文件。
从CD-ROM上安装TweakUI示例文件到C:\\Program Files\\TweakUI。
这样我们就完成了开发工作站的准备工作。

硬件平台分析
在开发过程中,首先需要运行硬件分析程序来分析当前机器的硬件配置情况。
操作系统与硬件紧密相关,只用充分地了解和支持硬件,才能让操作系统正常稳定的运行。由于X86结构计算机的硬件比较复杂,普通开发者很难对它充分地理解熟悉,因此,微软提供了一个硬件分析工具来帮助开发者分析硬件。
Windows XP Embedded提供的这个工具叫Target Analyzer,可以自动分析所在设备的硬件信息,Target Analyzer有两个版本:TA.exe和TAP.exe。分析完成后会在同一个目录中产生一个XML格式的输出文件Devices.pmq。
TAP.exe是一个32位的应用程序,运行在Windows XP和Windows 2000上,可以运行一些高级的硬件检测。
TA.exe是一个16位应用程序,运行在DOS上,可以用来检测一些无法安装Windows 2000及Windows XP的系统,但检测的功能要差一些,有的硬件设备无法识别。
下面我们运行TAP.exe来检测这台开发机的硬件配置:
? 进入C:\\Program Files\\Windows Embedded\\Utilities目录
? 运行TAP.exe,会在同目录中生成Devices.pmq
用文本编辑器打开这个Device.pmq文件,文件中用XML语言描述了目标设备的硬件信息,例如:在PCI段中,描述了Intel的21440 Ethernet 控制器。
因为我们是在开发工作站上运行了这个程序,所以Devices.pmq中包含的是开发工作站的硬件信息。

保存硬件平台信息
使用Devices.pmq中的信息有两个办法,其一可以根据这个文件生成一个
XPE组件,为以后开发完整的操作系统作准备;其二可以在开发时将这个文件直接导入;将PMQ文件做成XPE组件的好处是,可以一次工作反复使用:做成XPE组件后保存到组件数据库中,以后每次开发系统都可以调用。
? ? 运行组件设计器 Component Designer
? ? 将刚才生成的Devices.pmq文件导入,选择File/Impot… ,弹出导入对话框
? ? 按下“Start”按钮,开始PMQ文件的导入过程,该过程大约耗时10分钟;完成后,会在Component Designer中显示一个‘Devices.sld’组件,将其改名为‘Demo Platform Component’
? ? 展开Component Designer中目录结构
Windows XP Embedded Client
Components
Devices
选中Devices,将组件的Name属性由‘Devices’改为‘Demo Platform Component’

你可以将该组件设为‘Selector Prototype Component’类型,成为该类型的组件后,可以在Target Designer中单独地选取该组件所关联的各个设备:
? ? 在Prototype栏中按下Browse…,弹出Select Prototype Component对话框。
? ? 在Prototype component source栏中选中Database选项。
? ? 在组件树列表中展开到Software/Test&Developnent,选中Selector Prototype Component组件。
? ? 按下OK确定。

选择File/Save as菜单将该配置保存为“C:\\XPE_Demo\\DemoPlatform.SLD” 这个SLD文件中就包含了前面开发的Demo Platform Component组件,关闭Component Designer。
1. 2. 要在Target Designer中使用这个组件,需要先把这个组件保存到组件数据库中:
? ? 打开Component Database Manager,开始菜单\\所有程序\\Microsoft Windows Embedded Studio\\Component Database Manager
? ? 点击‘Import’按钮,在SLD File:栏中按下浏览按钮,找到“C:\\XPE_Demo\\DemoPlatform.SLD”,点击Import。
? ? Import成功后,关闭Component Database Manager。
? ? 确认工作成果:
打开Target Designer,选择 File/New菜单,建立一个新的配置Configuration,确认Demo Platform Component 是否在Target Designer左侧的组件浏览器中,如果发现该组件,则说明刚才的硬件分析工作顺利完成了。

创建初始化配置
要构造一个完整的XPE系统,首先需要在Target Designer中创建一个配置(Configuration),这个配置仅仅是一个空的开发框架,然后在该配置中添加所有的硬件支持组件,系统内核组件和软件功能组件。添加完成后使用Target Designer自动检测组件的关联关系,并自动把缺少的组件添加到配置中。
? 首先运行Target Designer
? 选择File菜单
? 选择New,创建一个新的Windows XP Embedded 配置
? 将该配置的Name 改为DemoPlatform
在下面的Choose Platform中,选择Windows XP Embedded Client (x86)

按下OK按钮创建该配置并保存
在Target Designer中间的组件列表栏中,选中DemoPlatform.slx,在右边的属性栏中修改配置的属性,添入您的个人信息(Name, Owner, Author, Description等)

设置高级参数
下面设置一些整个系统运行需要的参数
在配置浏览器的顶端,展开DemoPlatform.slx,选中Settings,这时右边的属性设置面板会显示可以设置的选项

在Target Devices Settings下面,点击Show,显示详细的选项
设置下列的配置信息:
? ? Boot Drive = C:
? ? Windows Folder = D:\\Windows
? ? Program Files Folder = D:\\Program Files
? ? Documents and Settings folder = D:\\Documents and Settings
? ? Boot ARC path = multi(0)disk(0)rdisk(0)partition(2)
? ? Boot Partition Size (MB) = 700
设置完成后,将配置信息保存到C:\\XPE_Demo 目录。
创建XPE组件
通常每一个嵌入式设备都会运行一个或多个用户自己的应用程序,另外如果使用了非通用的硬件设备,还需要添加相应的驱动程序;怎样把这些相对独立于操作系统的部分集成到操作系统中来,使其成为一个整体?推荐的方法是,将各个独立的部分做成XPE组件,在开发阶段进行集成;通常该工作可以分成五个阶段:
? ? 确定组件使用的资源以及设置
? ? 在Component Designer中配置组件的资源和设置选项
? ? 创建一个Repository,将该组件使用的文件加入到该Repository中
? ? 保存该组件的配置信息
? ? 将该组件导入到Component Database Manager中
下面我们就以一个实际的例子来说明,为TweakUI Control Panel
程序创建一个XPE组件。
? ? 打开Component Designer。
? ? 选择File\\Import菜单,将浏览的文件类型设置为Setup Information Files(*.inf)
? ? 选择“C:\\Program Files\\TweakUI\\TweakUI.inf”,并将其导入,Component Designer可以根据TweakUI.inf中的信息,自动生成一个组件。
? ? 需要为这个组件添加一个Repository,这个Repository实际上是一个系统目录,该目录中包含组件所需要的文件,每一个带有文件的组件都会对应一个或多个Repository,打开Component Designer中的Repositories文件夹。

点击右键,在弹出菜单中选择“Add Repository”,新建一个Repository。
在该Repository的Name属性中填入Tweak UI Files
点击Source Path栏中的Browse按钮,找到C:\\Program Files\\TweakUI。

在Component Designer中选中TweakUI.inf组件

在该组件的属性栏中,按下Repository按钮
在弹出的Select Repository对话框中,选择Tweak UI Files项目,确定。

最后,选中tweakui.inf组件,在右边的属性设置面板中将该组件的名字改为Tweak UI Control Panel Applet。
选择File/Save as,保存为"C:\\XPE_Demo\\TweakUI.SLD",关闭Component Designer。
到此已经完成了TweakUI组件的创建;同前面创建的硬件信息组件一样,要在Targert Designer中使用这个组件,必须先将其导入到组件数据库中。
打开Component Database Manager,
Import这个TweakUI组件:找到"C:\\XPE_Demo\\TweakUI.sld"并导入
导入完成后,关闭Component Database Manager
打开Target Designer
打开刚才创建的配置DemoPlatform
确认Demo Platform Component 组件和Tweak UI Control Panel Applet组件都在Target Designer的组件浏览器中。

与其他组件不同,利用Target Analyzer的输出文件Devices.pmq生成的组件是一个宏组件,宏组件本身不具备什么功能,仅仅是带有与其他组件的关联关系;前面我们开发了一个名为“Demo Platform Component”的宏组件,利用该组件可以方便的为初始化配置添加硬件支持。

构造XPE 系统影像文件
到此我们已经完成的硬件信息的分析并开发了一个硬件信息组件,开发了一个应用程序的组件,另外还建立了初始化的配置。在本节中我们来完成一个完整配置的开发工作。
打开Target Designer
第一个需要添加的组件是由Devices.pmq文件产生的宏组件Demo Platform Component,加入了这个组件,就把硬件信息全部添加到配置中;只要在Target Designer左侧的组件浏览器面板中双击该组件就可以添加该组件到配置中。
在组件浏览器中,找到Demo Platform Component组件,将该组件加入配置中。
如果没有找到该组件,可以在查找栏中输入它的名字进行检索。

在Target Desinger中包含了一万一千多个组件,怎样找到自己需要的组件呢?下面我们来讨论一下组件浏览器中的过滤器。
可以通过过滤的方法找到一个组件或一组相关的组件,Windows XP Embedded开发包内包含的大量组件可以通过过滤器方便地进行查找。
点击在组件浏览器上面的Filter按钮,创建一个新的过滤器
在Filter Manager对话框中,按New按钮
在Name栏填入TweakUI
在过滤规则描述栏中,双击过滤规则“Component Display Name Contains[Sybstring]”,在出现的Filter Editor对话框中,输入TweakK

按下OK关闭过滤编辑器
在Filter Manager中,Avalable Filter List栏中应该显示Tweak
选择Tweak过滤器,并按下Apply Filter按钮

在组件浏览器中,会仅仅显示Tweak UI Control Panel Applet组件
将该组件加入到配置中
将过滤器恢复到All Conponents显示状态,显示所有的组件
下一步,将向配置中添加Design Template组件,这个设计模板组件也是个宏组件,并且与Demo Platform Component 组件非常类似;所谓宏组件是指一个仅仅包含组件关联信息的组件,而没有其他功能。例如可以将与TCP/IP协议有关的20个组件都与一个名为TCP/IP的宏组件关联,通过添加这个TCP/IP宏组件,可以一次添加那20个组件。
向配置中添加组件的方法有很多,可以单个组件逐一添加;可以添加宏组件;也可以通过Target Designer的关联性检查功能自动添加组件。
Windows XP Embedded提供了若干的模板组件,从单一的软件功能如TCP/IP、DerictX8.0到整个系统模板如机顶盒模板、POS机模板都有,可以根据实际应用考虑使用其中一个。
加入Windows-based Terminal Professional组件,这个组件可以在Design Templates文件夹中找到。在配置面板中,扩展这个组件,并选中Settings,右边的属性面板会显示该宏组件中主要的组件模块。
下一步工作是要向配置中添加其他必须的核心组件,在这个例子中,你的文件系统是FAT格式,所以需要添加FAT组件
1. 1. 可以在Software\\System\\Storage and File Systems\\Infrastructure\\File Systems路径下找到FAT组件
2. 2. 再加入Fat Format组件,该组件在Software\\System\\Storage and File Systems\\Applications路径下
3. 3. 加入Explore Shell组件,该组件在Software\\System\\User Interface\\Shells路径下
4. 4. 加入NT Loader组件,该组件在Software|System\\System Services\\Base.路径下
最后,进行关联性检查,确保所有的必要组件都已经添加到配置中。
在Configuration菜单中,选择Check Dependencies进行组件关联性检查,所有宏组件的关联组件以及缺少的组件都会自动添加到配置中。
关联性检查结束后,会提示一个错误:
Component: "Regional and Language Options [Version 5.1.2600, R620]" requires at least one additional enabled component not in the configuration.
Target Designer不能通过自动添加组件解决这个错误,因为有多个组件可以选择,所以Target Designer会将可以选择的组件列出,由开发者自己决定添加哪一个组件。
选择Target Designer底部的Tasks栏

双击上面的条目,Target Designer会显示一个提示,要开发者从多个可选的组件中挑选需要的组件。
在本例子中,选择English Language Support组件,按下Add按钮,尽管其他语言也列出了,但并不是必须的。

开始菜单选项
在关联性检查阶段,User Interface Core组件会被自动添加到配置中,因为其他开发者选中的组件需要该组件的支持;如果需要在Image的开始菜单中包含需要的菜单,则要设置该组件的选项。
选择的开始菜单选项:
? ? Show Control Panel on Start Menu
? ? Show My Computer on Start Menu
不要选择的开始菜单项:
? ? Prohibit Access to Hot Keys
? ? Prohibit Access to Control Panel

最后再进行一次关联性检查。

构造及测试运行时IMAGE
在Configuration菜单中,选中Build Target Image… 菜单项,出现Build对话框
在Destination栏中,添入一个保存Image的空目录,例如在C:\\Windows Embedded Images目录下,建立一个新的空目录Test Configuration

log文件应保存在另外的目录中,不要与Image在同一目录
按下Build按钮,Target Designer会完成Image的构建;完成后,在指定目录下会生成如下的文件和目录集合

如果在运行了关联性检查之后,对配置进行了改变,构建Image时,Target Designer会提示开发者再做一次关联性检查。
构件完成后,会显示如下的提示框:

在上面的例子中,请注意提示No Errors,但有两个Warnings,第一个Warning出现是因为在配置中没有输入PID号码,不输入PID号码构造出来的Image是个限时评估版的;第二个Warning出现是因为Tweak UI 组件被包含进配置,但该组件不是Released版本组件,当然对Image本身没什么影响。
构造完成后,关闭该对话框。
将以上Image文件目录中的目录和文件拷贝到D盘的根目录下,因为文件目录必须和前面配置属性中的设定相匹配,拷贝完成后,得到下面图示的目录:
保存配置信息,选择File菜单的Save菜单项。
关闭Target Designer
重启机器
测试XPE系统
在重启过程中,会提示两个启动选项,运行Windows XP Professional, 或者运行 Windows XP Embedded. 择Windows XP Embedded。
启动选项使用C:\\Boot.ini控制的,在前面我们已经在Boot.ini中添加了如下段落:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\\WINDOWS="Microsoft Windows XP Professional" /fastdetect
multi(0)disk(0)rdisk(0)partition(2)\\WINDOWS="Microsoft Windows XP Embedded" /fastdetect
当XPE正常运行后,可以查看在该系统中是否包含了我们需要的功能,以此来检验我们的工作。
打开Control Panel,查看其中是否包含了Tweak UI Control Applet选项。

运行Tweak UI控制面板程序,可以看到下面的对话框:

到此,我们完成了整个开发过程。
回复

使用道具 举报

 楼主| 发表于 2005-7-11 12:55:58 | 显示全部楼层

Windows XP Embedded 精华文章汇总

    Microsoft Windows XP Service Pack 2 (SP2), RTM
Microsoft Windows Preinstallation Environment Version 2004
                   Readme Document
                     June 25, 2004
Information in this document, including URL and other Internet Web
site references, is subject to change without notice and is provided
for informational purposes only. The entire risk of the use or
results of the use of this document remain with the user, and
Microsoft Corporation makes no warranties, either express or implied.
Unless otherwise noted, the example companies, organizations,
products, people, and events depicted herein are fictitious. No
association with any real company, organization, product, person,
or event is intended or should be inferred. Complying with all
applicable copyright laws is the responsibility of the user. Without
limiting the rights under copyright, no part of this document may
be reproduced, stored in or introduced into a retrieval system, or
transmitted in any form or by any means (electronic, mechanical,
photocopying, recording, or otherwise), or for any purpose, without
the express written permission of Microsoft Corporation.
Microsoft may have patents, patent applications, trademarks,
copyrights, or other intellectual property rights covering subject
matter in this document. Except as expressly provided in any written
license agreement from Microsoft, the furnishing of this document
does not give you any license to these patents, trademarks,
copyrights, or other intellectual property.
(c) 2004 Microsoft Corporation. All rights reserved.
Microsoft, MS-DOS, Windows, and Windows NT are either registered
trademarks or trademarks of Microsoft Corporation in the United States
or other countries or regions.
The names of actual companies and products mentioned herein may be
the trademarks of their respective owners.
========================
How to Use This Document
========================
To view the Readme file in Microsoft Windows Notepad, maximize
the Notepad window. On the Format menu, click Word Wrap.
To print the Readme file, open it in Notepad or another word
processor, and then use the Print command on the File menu.
========
CONTENTS
========
1. INTRODUCTION
2. KNOWN ISSUES
3. SAMPLES
4. DOCUMENTATION CORRECTIONS
---------------
1. INTRODUCTION
---------------
This document provides current information about the Windows
Preinstallation Environment Version 2004 for Microsoft
Windows XP SP2.
The new features for Windows PE in this release include Windows
Management Instrumentation (WMI) support, driver injection support,
and Windows Firewall integration. For documentation, see "Adding WMI
Support to Windows PE," "Adding Drivers to a Windows PE Image," and
the "WinPEFirewall" entry in the "[WinPE.Net]" topic of Winpe.chm,
located in the \Docs directory.
There is no installer for this CD. Copy the files to your hard disk
and run the tools from there.
Use the Mkimg tool from Windows PE XP SP2 only with
Windows XP SP2 to create Windows PE.
You can use the Windows XP SP2 OPK to preinstall the following
versions of Windows:
   * Original "gold" release of Windows XP
   * Windows XP SP1 and Windows XP SP2
   * Windows Server 2003 family
To preinstall the Windows Server 2003 Itanium-based client,
use the Windows Server 2003 SP1 Itanium-based tools.
---------------
2. KNOWN ISSUES
---------------
* Adding Symbolic Names of Serial Ports to Windows PE
Windows PE does not create symbolic names such as COM1 and COM2
for serial ports. This means that applications cannot detect
and use the serial ports.
Workaround: To create the symbolic names, you can write an
application that calls the DefineDosDevice function and
uses the full device name of the port. Add this application to
Startnet.cmd so that it runs as part of the Windows PE boot
process. When the application is finished, applications
can detect the serial ports by their symbolic names.
You must add a registry key to your offline Windows PE image
before deploying it in order to use the serial ports.
1. Use Regedit to mount Setupreg.hiv in your offline image
to HKLM\test.
2. Add the following key:
   HKLM\test\ControlSet001\Services\serial\Parameters
3. Unmount Setupreg.hiv.
The full device name of COM1 when using the ACPI
HAL is:
  \\?\ACPI&#35;PNP0501&#35;1&#35;{4D36E978-E325-11CE-BFC1-08002BE10318}
To identify the full device names for serial ports on other HALs,
use the QueryDosDevice function to search for the string "PNP0501".
To use serial ports in custom applications, either refer to the
ports by their full device names or use DefineDosDevice to create
the symbolic names as in this example:
  &#35;define COM_PORT_DEV_NAME(n) \
    TEXT("\\\\?\\ACPI&#35;PNP0501&#35;") TEXT(&#35;n) TEXT("&#35;{4D36E978-E325
     -11CE-BFC1-08002BE10318}")

  &#35;define COM_PORT_NAME(n) \
    TEXT("COM") TEXT(&#35;n)
  DefineDosDevice( 0, COM_PORT_NAME(1), COM_PORT_DEV_NAME(1) );

* The [Components] topic in Winpe.chm is not indexed. Use the
Content or Search tabs in the HTML Help viewer to look up
optional components by name in Winpe.chm.
----------
3. SAMPLES
----------
The \Samples directory contains samples for WMI and driver injection,
and a file named Swinpe.txt used to reduce the size of Windows PE. See
"Reducing the Size of Windows PE" in Winpe.chm for more information
about using Swinpe.txt.
\Samples\WMI\script
Contains .vbs sample scripts that demonstrate various WMI queries.
To run the WMI vbs samples, you must add Windows Script Host support
to the Windows PE image by copying the files generated by the
Buildoptionalcomponents.vbs build tool using the /WSH switch.
Sample scripts:
CIM_LogicalDevice.vbs                     ;Lists all logical devices
ListProvider.vbs      ;Lists all providers and classes in repository
Win32_AllocatedResource.vbs           ;Lists all allocated resources
\Samples\WMI\wmismbios
Contains a Visual Studio 2003 VC7 Project that demonstrates a WMI C++
interface. Wmismbios_cpu.exe is a console application that uses the
WMI COM interface to query an instance of an MSSmBios_RawSMBiosTables
class and optionally dump the SMBIOS tables to a file.
Syntax:
wmismbios.exe [-d dumpfile]
   [-d dumpfile] file path to dump the raw SMBIOS table
Exit codes:
1 for success.
0 for failure.
Project files:
wmismb.cpp
wmismb.h
wmismbios.ncb
wmismbios.sln
wmismbios.vcproj
readme.txt
Output example:
X:WMI\smbios>wmismbios
DmiRevision:           35
Size:                  2083
SmbiosMajorVersion:    2
SmbiosMinorVersion:    3
Used20CallingMethod:   False
== BIOS Information (Type 0 / Length 20 / Handle 0x0h)
BIOS Vendor:                       Dell Computer Corporation
BIOS Version:                      A05
BIOS Starting Address Segment:     0xf000h
BIOS Release Date:                 02/26/2003
BIOS ROM Size:                     512k
BIOS Characteristics:              0x000000000000de90h
  - ISA Supported:                 Yes
  - MCA Supported:                 No
  - EISA Supported:                No
  - PCI Supported:                 Yes
  - PC Card (PCMCIA) Supported:    No
  - PNP Supported:                 Yes
  - APM Supported:                 Yes
  - BIOS Flash Upgradeable:        Yes
  - BIOS Shadowing Allowed:        Yes
  - VL-VESA Supported:             No
  - ESCD Supported:                Yes
  - Boot from CD Supported:        Yes
  - Selectable Boot Supported:     Yes
  - BIOS ROM Socketed:             No
  - Boot From PC Card Supported:   No
  - Enhanced Disk Drv Supported:   Yes
  - INT13H NEC Floppy 1.2MB:       No
  - INT13H Toshiba Floppy 1.2MB:   Yes
  - INT13H 5.25" 360KB Floppy:     No
  - INT13H 5.25" 1.2MB Floppy:     No
  - INT13H 3.5" 720KB Floppy:      No
  - INT13H 3.5" 2.88MB Floppy:     No
  - INT5H Print Screen Supported:  Yes
  - INT9H 8042 Keyboard Supported: Yes
  - INT14H Serial Supported:       Yes
  - INT17H Printer Supported:      Yes
  - INT10H CGA MONO Supported:     No
  - NEC_PC_98:                     No
BIOS Characteristics Extension 01: 17h
  - ACPI Supported:                Yes
  - USB Legacy Supported:          Yes
  - AGP Supported:                 Yes
  - I2O Boot Supported:            No
  - LS-120 Boot Supported:         Yes
  - ATAPI ZIP Drv Boot Supported:  No
  - IEEE1394 Boot Supported:       No
  - Smart Battery Supported:       No
BIOS Characteristics Extension 02: 3h
  - BIOS Boot Spec Supported:      Yes
  - Function Key Network Boot:     Yes
== System Information (Type 1 / Length 25 / Handle 0x100h)
Manufacturer:  Dell Computer Corporation
Product Name:  OptiPlex GX260
Version:
Serial Number: 1WC8V21
UUID:          44 45 4c 4c 57 0 10 43 80 38 b1 c0 4f 56 32 31
Wake-up Type:  Power Switch
\Samples\PNPENUM
Contains a Visual Studio 2003 VC7 project for a sample utility to
detect PnP DevNode status.
Project files:
            
pnpenum.cpp
pnpenum.sln
pnpenum.vcproj
readme.txt
Syntax:

pnpenum.exe [-s <service> | -c <class>] [-v]

   [-s <service> | -c <class>]     ;Filters by service or class
   [-v]                            ;Prints devnode status
Without -s or -c, print all devices
Examples:
   pnpenum.exe -v          ;Lists all devices with full devnode status
   pnpenum.exe -s PCI      ;Lists devices controlled by PCI service
   pnpenum.exe -s ATAPI    ;Lists devices controlled by ATAPI service
   pnpenum.exe -c NET      ;Lists devices belonging to NET class
   pnpenum.exe -c System   ;Lists devices belonging to System class
The DEVNODE instance is highlighted in green in the console list. The
level of indentation in the list indicates the node depth in the
tree. See cfg.h in the Windows Device Driver Kit (DDK) for an
explanation of the DN and CM status codes.
The pnpenum sample uses the cfg.h and cfgmgr32.lib from Windows DDK
build 3790. On the build machine, you must have both Visual Studio
2003 and Windows DDK build 3790 installed in order to build the
sample. In VS2003 IDE, choose Tools|Options|Projects|VC++ Directory,
add the DDK installation C:\Winddk\3790\inc\wnet to the Include
files search path, and then add the DDK installation path
C:\Winddk\3790\lib\wnet\i386\ to the Library files search path. The
DDK lib path must be listed after the &#36;(VCInstallDir)PlatformSDK\lib
path.
----------------------------
4. DOCUMENTATION CORRECTIONS
----------------------------
* The section on Winbom.ini in Winpe.chm does not list the [WindowsFirewall]
section.
[WindowsFirewall]
Answer File = Unattend.txt and Winbom.ini
WinbomType = Factory
The [WindowsFirewall] section contains the following user-defined sections
that enable you to configure the Windows Firewall Exceptions list:
   [WindowsFirewall.<profile_name>]
   [WindowsFirewall.<program_name>]
   [WindowsFirewall.<service_name>]
   [WindowsFirewall.<portopening_name>]
   [WindowsFirewall.<icmpsetting_name>]
For details about the Windows Firewall sections and entries, see the
[WindowsFirewall] section in the Unattend.txt answer file in the
Microsoft Windows Preinstallation Reference (Ref.chm). The user-defined
sections and entries work the same way for both Unattend.txt and Winbom.ini.
Important
The Windows PE firewall features are specific to Windows PE and are not
related to the Windows Firewall. The Windows PE firewall features help
protect Windows PE against malicious users or programs.

* The [WinPE] topic does not list the OptionalSources entry.
OptionalSources
  Used when preinstalling Tablet PC or Media Center components as
  part of a configuration set.
Syntax
OptionalSources = Yes
Value
  Yes
   Use the \Cmpnents folder as part of the configuration set.
Example
  OptionalSources = Yes

WinbomType
  WinPE
Comments
  Requires the addition of the \Cmpnents folder containing the Tablet PC
  or Media Center files to your configuration set. For more information,
  see the installation instructions on the Tablet PC or Media Center CDs.
* In the "Mkimg Command" topic, delete the following sentence:
  Use /NOWF only when running server applications such as IIS
  on the Windows PE computer.
* The Winpeshl.ini answer file is not listed in the "windows PE Answer
Files" section. For instructions on how to use it, see the "Using a
Custom Shell Application" section of the "Creating a Customizable
Windows PE Image" topic.
* The Windows PE User Guide does not include a topic on the Depend
tool. Located in the \Winpe folder, it identifies missing DLL
dependencies for windows PE applications.
Syntax:
depend [/l] /f:filespec;filespec;... [/d:directory;directory;..]
  /s ;Silent mode.
  /l ;List all dependencies
If directories are not specified, the Windows search path will be
used to look for dependencies.
Error codes:
0 = OK
1 = errBAD_ARGUMENTS
2 = errFILE_NOT_FOUND
3 = errFILE_LOCKED
4 = errMISSING_DEPENDENCY
5 = errOUT_OF_MEMORY
Example:
To make sure all DLLs required by Myapp.exe are in your Windows PE
image, run Depend with these parameters:
  depend /l /f:c:\winpe\i386\system32\myapp.exe /d:c:\winpe\
    i386\system32
* Using Multiple Static IP Addresses
You may now specify multiple static IP addresses for as many
network cards as may be installed in the computer. The syntax for
this functionality is identical to existing documentation; append
additional addresses to existing entries, using a semicolon to
separate multiple addresses.
This example installs DHCP to the first network card found in the
system, applies static IP addresses to the next two detected cards,
and applies DHCP to any additional networking cards.
[WinPE.Net]
Startnet = YES
Ipconfig = DHCP;10.1.100.2;1.2.3.4
SubnetMask = DHCP;255.255.248.0;255.248.255.1
Gateway = DHCP;10.1.101.2;10.1.101.3
* Adding INRAM Functionality to Windows PE
The functionality of the /INRAM option of the Osloadoptions command
of the [InfChanges] section of Config.inf has changed. Windows PE
fully loads Win32K.sys into memory, resulting in an improved
CD-swapping experience for recovery scenarios.
To enable INRAM support, add this option to the Osloadoptions command
in the [InfChanges] section of Config.inf:
/INRAM
Example:
Osloadoptions=txtsetup.sif,setupdata,"/fastdetect /minint
/redirect /redirectbaudrate=115200 /INRAM"

回复

使用道具 举报

 楼主| 发表于 2005-7-11 22:48:58 | 显示全部楼层

Windows XP Embedded 精华文章汇总

这篇帖子好冷清啊 不知道是大家对话题不感兴趣呢 还是论坛人气不行 总之 鄙视看帖不回的人
回复

使用道具 举报

发表于 2005-7-11 22:53:43 | 显示全部楼层

Windows XP Embedded 精华文章汇总

关键在于是不是精华。
回复

使用道具 举报

 楼主| 发表于 2005-7-12 15:57:43 | 显示全部楼层

Windows XP Embedded 精华文章汇总

精华帖子怎么能沉呢 强烈建议版主将此帖置顶
回复

使用道具 举报

发表于 2005-7-12 15:59:54 | 显示全部楼层

Windows XP Embedded 精华文章汇总

谢谢你的分享精神,可是一般性的贴子都要求置顶,目前做不到。
回复

使用道具 举报

发表于 2005-7-12 16:55:11 | 显示全部楼层

Windows XP Embedded 精华文章汇总

没有独到精辟的见解,就....
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持本站|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2019-5-21 02:45

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表