精简版系统制作的关键技术

1.工具篇

关于 nLite:
    平时我们都是通过默认的方式安装 Windows 。系统中自带的组件,有很多都是我们一辈子也用不上的。这些对我们来说并不实在的东西,会占用不少的硬盘空间和系统资源。
    利用 nLite 给系统安装光盘瘦身,移除那些我们并不需要的 Windows 组件,定制后的系统光盘,体积不到 150 MB,安装后,硬盘空间占用 400-450 MB 左右,PF使用率在 30-60 MB之间,从而节省更多的硬盘空间,释放更多的内存,可以在配置很低的旧机器上流畅运行。
       nLite (当前最新版本为 nLite v1.0 RC1 )
官方下载页面:http://www.nliteos.com/download.html
    Microsoft.NET Framework v1.1 简体中文版      23.15 MB
官方下载链接:http://download.microsoft.com/do ... 19a568/dotnetfx.exe
    Microsoft .NET Framework v1.1 Service Pack 1 简体中文版      10.21 MB
官方下载链接:http://download.microsoft.com/do ... p1-KB867460-X86.exe
--------------------------
如何将文件压缩成 .xx_ 格式?
A. 最简单的, 系统自带的 makecab.exe
B. 使用 CompressionBin, 这个使用非常简单, 可以一次拖放多个文件, 批量生成 .xx_ 文件. 它是通过调用 makecab.exe 实现压缩文件的, 所以请确保系统目录下有 makecab.exe. 另外, 想要运行它就需要先安装 .Net.
-----------------------------
如何将文件以及目录都压缩到一个 .Cab 文件中?
A. MackeCab.exe : 想用它手动创建 .Cab 文件可不是一般人能搞得定的......
B. 系统自带的 iexpress.exe. (我用不习惯)
C. WinCab: 我个人喜欢用它, 虽说不是很好用, 但是它是通过调用 makecab.exe 创建 .Cab, 那么就品质而言还是可以放心的. 使用前, 要先将 makecab.exe 放到它所在的目录中. 注意: 如果你想在 Cab 文件中添加文件夹, 那么你应该选中 "Option" -> "Recursively include subdirectories". 网上有汉化版, 可以自己找一下.
----------------------------------------
如何解开 .xx_ 格式的文件?
其实这些文件都是 .Cab 格式的压缩包, 因为其后缀名不尽相同, 处理起来也有点棘手.
A. Expand.exe 是专门用来解压这些文件的. 系统自带的命令行工具.
B. 我个人最常用的方法. 当有大批量 .xx_ 文件时, 全选, 然后点右键, 重命名, 随便改成 aa.cab, 其它文件也会按序自动重命名. 此时, 生成了一堆 .Cab 文件, 接着全选, 用 WinRAR 或 WinZip 批量解压缩就是了. 就这么简单....
-------------------------------------------------
小知识: 什么是替换资源式的 ShellPack (美化包)?
所谓美化捏, 一般来说, 就是用 ResHacker, eXeScope 这类资源编辑软件修改程序或库文件中的图标, 图片, AVI, 对话框等资源, 使其看起来更漂亮, 或者说更加与众不同.

所谓美化包捏, 一般来说, 就是美化很多文件, 使其全都符合某种样式, 比如, Mac, Longhorn 等风格, 然后再配合壁纸, 声音主题, VS 可视化效果, 图标等等元素, 如果再做成安装程序的模式, 那么一个美化包就算是正式出炉了.

所谓替换文件式的美化包捏, 顾名思义. 比如说, 现在流行 Windows XP SP2, 那么这种美化包就会以 XP SP2 的文件为蓝本进行美化. 那么最后做出的美化包就是要用这美化好的文件替换 XP SP2 的文件, 所以就叫做替换文件式. 这个缺点很明显, 做出来之后就只能用于 XP SP2, 即便是 XP SP1 都不可直接用. 大概 2004 年前的美化包都是这种安装方式的.

所谓替换资源式的美化包捏, 就是俺最欣赏的那种. 要知道, 目前的主流系统就是 XP 和 2003, 它们的结构差不多, 大多数文件中的资源分布状况一摸一样. 而且, 相对以前的 Windows 来说, 它们有个很大的优点, 支持主题, 这样大家就可以随心所欲地美化系统了. 可是捏, XP 和 2003 细分起来, 可不只这两个版本啊, 常见的就有 XP, XP SP1, XP SP2, 2003, 2003 SP1, 更何况还有在线更新搞出来的各类小版本. 所以捏, 如果想为每个版本都做份美化的话, 非累死不可, 美化包的体积也将大的惊人. 最后, 终于在这两年, 外国有高手为解决这个问题而努力奋斗了. 印象中最早做出这种替换资源式美化包的应该是 WinOSX 的作者, 其中 FlyakiteOSX 的作者 Flyakite 也有参与此项目. 那么以下简单介绍下原理.
既然各个版本的文件资源分布差不多, 那么我们只让美化包替换文件中的资源不就得了? 根本不用直接文件嘛, 而且这样一来, 只替换资源, 而不替换文件中的可执行代码部分, 又可以极大地减小美化包的体积了. (因为有些文件只需替换个图标而已, 比如, 一个文件 1M, 替换些图标 100K, 那么替换文件的方式将会额外浪费 900K). 这个就要靠 ResHacker 实现了. 它可以利用专用脚本实现自动替换文件中的资源. 这样就不怕 n 个版本的文件了, 因为就 XP 和 2003 而言, 资源与文件无关. 另外还要说明一点, 目前支持全语言版本的美化包还是有点缺陷的, 因为对话框中有很多本地化字符串, 改的话, 就无法支持多国语言了, 不改的话, 就无法实现进一步的美化了. 所以, 请尽可能地下载针对本国语言的美化包, 这些美化包一般都把对话框改了的, 要好看许多.
为什么要用 ResHacker 呢? 首先, 因为 ResHacker 和 eXeScope 是最常见最方便的资源编辑软件, 而且, 它们都支持通过专用的脚本来实现编辑文件中的资源. 那么为什么不用 eXeScope 捏, 何况它有个专门用于脚本处理的 eXeBat.exe, 才 100 多K, 而 ResHacker 却有 860K. 其实这是因为版权问题, eXeScope 是共享软件, 需要注册, ResHacker 则是自由免费软件, 而老外比较重视版权问题, 所以捏, 他们都选择了 ResHacker, 以免遇到麻烦. 既然老外先行者们都用 ResHacker, 那么我们这后来者也就随大流, 选用 ResHacker 吧. 当然, 你非要用 eXeScope, 或是其它资源编辑软件也不是不可以, 只是少了些本来就不多的相关参考资料罢了.
这种美化包的运行原理就不在此多说了, 推荐你到汉化新世纪看看, 那里有我以前请教高手时留下的帖子. 那个里面甚至有现成的安装源代码. 有志于此的, 可以学习学习.
(http://bbs.hanzify.org/index.php?showtopic=32533&hl=xpize)

国产替换资源式 ShellPack:
国内还是有能人di, 目前可以见到 3 个.

A. PixOS ShellPack 1.0.1.416
蓝色网际 MM 做的 PixOS 界面美化包, 还有 NSIS 安装源代码可以研究的.
(ftp://tingpu:[email protected]/Shell Pack/PixOS/PixOS.zip)


B. BlueWonder ThemePack 2.0 RC1
DreamMail 作者 Relay 的作品, Longhorn 类风格的主题包, 装上之后感觉不错.
(http://www.leelay.com/attachments/BlueWonder_20_RC1.rar)


C. Mac OS ShellPack
这个是与张程美化包配套的自动安装版本. 它的脚本是俺做的, 它的独特优点就在于支持修改对话框, 因此, 界面看起来更美观, 但是只能支持 Windows XP 和 2003 的简体中文版了. 由于张程的美化包要收费, 因此我不好拿出来给大家共享. 如果以后有其它比较全的美化资源的话, 我会做个免费的与大家一同分享. 以后有空继续完善 NSIS 安装脚本.



港台替换资源式 ShellPack:
目前只见到一个, 应该是香港同胞做出来的. 嘿嘿, 中国的强淫还是不少的. 至少能够跟的上潮流.

A. TigerMilk 3.51
应该是香港同胞做出来的 MacOS 类美化包, 完全可以媲美国外知名的 FlyakiteOSX. 它的网站页面是繁体中文的, 有专门的论坛支持. 怎么说繁体也比英文好看吧.
(http://share.fetag.org/~btofnc/TM/TM_V351.exe)



国外替换资源式 ShellPack:
国外出品的主题包一般都对中文版支持的不好, 同样的, 这里介绍的这几个主题包也存在着同样的毛病. 不过这并不能抹煞它们的优良品质.


XPize:
绝对的精品, 它是 XP 风格的强化美化包. 它的 uae 版, 也就是无人值守版, nLite 甚至可以用它美化 Windows 安装文件. 强烈推荐喜爱 XP 风格的朋友使用这个美化包.
nLite + RyanVM Pack + XPize = Perfect OS
完美的操作系统, 快速, 安全, 豪华.
http://www.msfn.org/board/index.php?showforum=112


FlyakiteOSX:
目前最知名的 MacOS 类美化包, 推荐大家试试.
http://osx.portraitofakite.com/


Longhorn Transformation Pack:
WinOSX 的作者做出的最出名的 Longhorn 类美化包, WinOSX 是老牌美化包了, 技术实力绝对是摆在那里的. 现在最流行的主题类型就是 Mac 和 Longhorn, 嘿嘿, 也就是现在的 Vista. 从现在到明年底, 你可以先用这个美化包来体验 Longhorn 的独特之处. 估计不久之后, 这个应该会改成 Vista Transformation Pack 吧.
http://www.windowsx.cc/

------------------------------------------------------------------------------------------------------------------------------------------------

精简组件

阳光家园系统维护盘的精简组件~
保留了打印传真的支持 保留了笔记本的支持~等等~
;# Applications - 应用程序 #
Accessibility Options - 辅助选项
Briefcase - 公文包
Charmap - 字符映射表
ClipBook Viewer - 剪贴薄查看器
Internet Games - Internet 游戏
NT Backup - NT 备份程序
Pinball - 三维弹球
Screensavers - 屏幕保护
Wordpad - 写字板
;# Drivers - 驱动 #
Asynchronous Transfer Mode (ATM) - 异步传输模式
Cameras and Camcorders - 数码摄像设备
InfraRed - 红外线
ISDN - 综合业务数字网络
Logitech WingMan - 罗技手柄
Microsoft SideWinder -微软手柄
Modems - 调制解调器
Portable Audio - 便携音频设备
Scanners - 扫描仪
Sony Jog Dial - Sony 滚轮键
Tape Drives - 磁带驱动器
Toshiba DVD decoder card - 东芝 DVD 解压卡
Wireless Ethernet (WLAN) - 无线网络
;# Hardware Support - 硬件支持 #
Brother Devices - Brother 设备
Multi-port serial adapters - 多端口串行适配器
Sony Memory Stick - Sony 记忆棒
Teletext codec - 图文编解码器
;# Multimedia - 多媒体 #
AOL ART Image Format Support - AOL ART 图像格式支持
Images and Backgrounds - 图像背景
Luna Theme - Luna 主题
Media Center - 媒体中心
Mouse Cursors - 鼠标光标
Movie Maker - Movie Maker
Music Samples - 音乐示例
Tablet PC - 平板电脑
;# Network - 网络 #
Active Directory service - 活动目录服务
Client for Netware Networks - Netware 客户端服务
Communication tools - 通讯
FrontPage Extensions - FrontPage 扩展
Internet Information Services (IIS) - Internet 信息服务
IP Conferencing - IP 会议
MSN Explorer - MSN Explorer
Netmeeting - Netmeeting
Network Monitor Driver and Tools - 网络监视驱动及工具
Network Setup Wizard - 网络安装向导
Peer-to-Peer - 对等网络
Synchronization Manager - 同步管理器
Vector Graphics Rendering (VML) - 矢量图形呈现
Web Folders - 网络文件夹
Windows Messenger - Windows Messenger
;# Operating System Options - 操作系统选项 #
.Net Framework - .Net 框架
Administrator VB scripts - VB 管理脚本
Color Schemes - 色彩方案
Desktop Cleanup Wizard - 桌面清理向导
Disk and Profile Quota - 磁盘配额
Document Templates - 文档模板
DR Watson - 华生医生
Extra Fonts - 额外字体
File and Settings Wizard - 文件和设置转移向导
File System Filter Manager - 文件系统筛选管理器
Input Method Editor - 输入法编辑器
MS Agent - 代理助手
Out of Box Experience (OOBE) - 注册激活
Private Character Editor - 造字程序
Remote Installation Services (RIS) - 远程安装服务
Security Center - 安全中心
Tour - Windows 漫游
Web View - 网页视图
Zip Folders - Zip 文件夹
帮助
;# Services - 服务 #
Alerter - 警报
Beep Driver - 蜂鸣驱动
Distributed Link Tracking Client - 分布式链接跟踪客户端
Distributed Transaction Coordinator (DTC) - 分布式事务协调器
Error Reporting - 错误报告
Imapi - IMAPI CD 刻录 COM 服务
Indexing Service - 索引服务
IPSEC Policy Agent - IPSec 策略代理
Messenger - Messenger
Network Provisioning - 网络供应服务
Performance Logs and Alerts - 性能日志和警报
QoS RSVP - QoS RSVP
Quality of Service Packet Scheduler - 质量服务数据包计划程序
Remote Registry - 远程注册服务
Removable Storage - 可移动存储
Secondary Logon - 二次登录
Service Advertising Protocol - 服务公布协议
SNMP - 简单网络管理协议
System Restore - 系统还原
TCP/IP NetBIOS Helper - TCP/IP NetBIOS 帮助器
Telnet Server - Telnet 服务器
Terminal Services - 终端服务
Text Services Framework - 文字服务框架
Uninterruptible Power Supply - 不间断电源
Universal Plug and Play - 通用即插即用
Volume Shadow Copy - 卷影复制
WebClient - 网络客户端

------------------------------------------------------------------------------------------------------------------------------------------------

完美保留XP系列的 DOS 下从硬盘安装的功能

nLite 中 "手动安装和升级" 所涉及到的各种文件如下:
理论:
手动安装和升级:(51.6MB)
   实际移除文件:
DWUP.IN_
ICONLIB.DL_
LNKSTUB.EX_
MDMSSYS.IN_
MIGISOL.EX_
MIGLIBNT.DL_
MIGPWD.EX_
OSC.CAB
OSCHOICE.EX_
REMINST.IN_
RINORPRT.SI_
RISTNDRD.SI_
SETUPACC.TXT
SETUPLDR.EX_
STARTROM.CO_
STARTROM.N1_
W95UPGNT.DL_
WELCOME.OS_
WINNT.EXE
WINNT32.EXE
WINNT32.HLP
WINNT32.MSI
WINNT32A.DLL
WINNT32U.DLL
WINNTBBA.DLL
WSDU.DLL
WSDUENG.DLL
/Compdata
/Drw
/Win9XMIG
/Win9XUPG
/WinNTUPG

完美保留硬盘安装方法:
保留 "手动安装和升级" , 然后手动在 i386 目录删除这些文件, 其中的 5 个文件夹一定要删除.
另外, 还可以考虑删除 i386 的上层目录中的那些 *.htm, *.txt, SETUP.EXE 文件.
要注意的是, 虽然大部分的文件都可以直接手动删除.
但是, 以下文件必须通过添加到 "移除框" 中的方式来删除. 否则, 安装时会提示缺少文件的.
至于其它的文件, 好像是没有在复制列表中定义, 所以就手动删除吧.

在额外移除文件列表中加入:
---------------------
iconlib.dll
dwup.inf
miglibnt.dll
reminst.inf
welcome.osc
migisol.exe
migpwd.exe
lnkstub.exe
w95upgnt.dll

---------------------
经过以上设置, 即基本上可以用最小的代价实现从 DOS 以及从硬盘上安装 XP 了. 建个批处理文件, 把以下命令复制到一个文本文件中, 另存为 .cmd 格式, 放到 i386 目录的上层目录中, 将其运行就能自动删除垃圾文件了.
del ./i386/DWUP.IN_ /Q
del ./i386/ICONLIB.DL_ /Q
del ./i386/LNKSTUB.EX_ /Q
del ./i386/MDMSSYS.IN_ /Q
del ./i386/MIGISOL.EX_ /Q
del ./i386/MIGLIBNT.DL_ /Q
del ./i386/MIGPWD.EX_ /Q
del ./i386/OSC.CAB /Q
del ./i386/OSCHOICE.EX_ /Q
del ./i386/REMINST.IN_ /Q
del ./i386/RINORPRT.SI_ /Q
del ./i386/RISTNDRD.SI_ /Q
del ./i386/SETUPACC.TXT /Q
del ./i386/SETUPLDR.EX_ /Q
del ./i386/STARTROM.CO_ /Q
del ./i386/STARTROM.N1_ /Q
del ./i386/W95UPGNT.DL_ /Q
del ./i386/WELCOME.OS_ /Q
del ./i386/WINNT32.EXE /Q
del ./i386/WINNT32.HLP /Q
del ./i386/WINNT32.MSI /Q
del ./i386/WINNT32A.DLL /Q
del ./i386/WINNT32U.DLL /Q
del ./i386/WINNTBBA.DLL /Q
del ./i386/WSDU.DLL /Q
del ./i386/WSDUENG.DLL /Q
RD ./i386/Compdata /Q /S
RD ./i386/Drw /Q /S
RD ./i386/Win9XMIG /Q /S
RD ./i386/Win9XUPG /Q /S
RD ./i386/WinNTUPG /Q /S

------------------------------------------------------------------------------------------------------------------------------------------------

关于输入法的处理

在 “要移除的额外文件” 选项内添加你不需要的输入法关联文件.具体如下:

微软拼音(5.5MB)
Pintllime.dll,Pintlgab.imd,Pintlgai.imd,Pintlgb.imd,Pintlgd.imd,Pintlgdx.imd,Pintlgie.imd,Pintlgnt.cnt,Pintlgnt.hlp,Pintlgnt.i96,Pintlgnt.ime,Pintlgrb.imd,Pintlgri.imd,Pintlgs.imd,Pintlgsi.imd,Pintlgsx.imd,Pintlgu.imd,Pintlguc.imd,Pintlphr.exe

智能ABC(1.2MB)
Winabc.cwd,Abcsda.dll,Abcwin.exe,Winabc.ime,Winabc.ovl,tmmr.rem,user.rem,Winabc.hlp,Winabc.cnt

郑码(1.6MB)
Winzm.ime,Winzm.mb,Winzm.hlp,Winzm.cnt

全拼(2.0MB)
Winpy.ime,Winpy.mb,Winpy.hlp,Winpy.cnt

双拼(1.7MB)
Winsp.ime,Winsp.mb,Winsp.hlp,Winsp.cnt

内码输入法(180KB)
Wingb.mb,Wingb.hlp,Wingb.cnt

表形码(1.6MB)
Winbx.mb,Winbx.ime,Winbx.hlp,Winbx.cnt

输入法相关帮助文件(1.1MB)
Winime.hlp,Winime.cnt,Ime.hlp,Ime.cnt

PS:可以全部移除,等待系统安装完成后再安装新版本的输入法,也可以只移除你不需要的输入法,
一般建议移除#微软拼音输入法# ,否则,当系统安装完成后,切换输入法时会出现错误提示,当然也可以在安装系统后再删除 #微软拼音输入法#

精简掉搜索助手但保留搜索功能的方法

1、在额外删除列表里 添加5个搜索助手的文件(其实搜索用手就12MB左右,删除这5个文件,就去掉了11MB)
msgr3en.dll
nls302en.lex
courtney.acs
earl.acs
rover.acs
2、把I386目录下的 srchasst.in_ 文件解压后得到srchasst.inf,分别删除“msgr3en.dll,,,32”、“nls30 2en.lex,,,32”、“courtney.acs,,,32”、“earl.acs,,,32”、“rover.acs,,,32”这几行,或者用封号屏蔽它们。保存后再压缩回去,替换原文件即可。
不过, 新手要注意一下, 使用这个技巧的前提是, 不要在"组件移除"里删掉"搜索助手".

------------------------------------------------------------------------------------------------------------------------------------------------

Winnt.sif 文件详解

Winnt.sif 文件为从光盘安装系统的无人职守方式用脚本,这个文件应存在于I386 目录
[Data]
AutoPartition=1 or 0
如果你在这里设置为1,Windows 的安装程序就会在任意一个有足够可用空间的硬盘分区上安装操作系统。如果你删除这一行或者把值设置为0,则安装程序会在安装过程中讯问你要
把操作系统安装到哪个硬盘分区,并且如果该分区已经包含了一个操作系统,安装程序也会给你合理建议。
MsDosInitiated = "0" or "1"
如果你在这里设置为0,则会通知安装程序,你是从光盘上安装操作系统的,如果你准备用软盘引导系统并从硬盘上安装,则在这里设置为1。
UnattendedInstall = "Yes"
如果这里设置为Yes,则安装程序会进行一次无人值守安装
AutomaticUpdates=yes
这个设置可以让安装程序在完成安装后跳过帮助保你你的PC 页面(SP2 中的新功能)。
[Unattended]
UnattendMode=FullUnattended
在这里设置为FullUnattended 将会进行一次完全自动的无人值守安装,在安装过程中遇到的所有问题都将由在winnt.sif 文件中预设的答案来回答,在安装过程中你将不能改变任何
预设值。其他值得含义你可以在Winnt.sif 页所提供的Ref.chm 文件中找到。
OemSkipEula=Yes or No
在这里设置为Yes 将会跳过EULA 屏幕,因为你已经在创建应答文件的时候读过用户许可协议了。在这里设置为No 则意味着你需要在安装过程中按F8 键同意许可协议。
OemPreinstall=Yes or No
这个选项默认设置为No,但是如果你还想在安装系统的过程中从$OEM$/$1 文件夹下安装额外的程序,你就应该把它设置为Yes,这样安装程序就会知道这次的安装会发布其他程序,而预先把相应的安装文件复制到系统盘中。
TargetPath=/WINDOWS
这个选项告诉了安装程序要把Windows 安装到哪个目录中。
Repartition=No
这个选项可以选择是否自动删除目标计算机上的所有分区并用NTFS 文件系统格式化硬盘。
UnattendSwitch="yes"
这个选项可以用来指定是否跳过Windows 欢迎界面,或使用光盘引导的方式预安装Windows XP Home Edition 或Windows XP 时使用Mini-Setup 模式。将该选项设置为“Yes”可以跳过创建网络连接以及创建用户帐户页面。
WaitForReboot="No"
这个选项用来决定计算机是否在图形界面的安装进行完毕后等待15 秒。设置为No 则可以禁止等待。
OemPnPDriversPath="Drivers/Catalyst3_6/2KXP_INF;Drivers/asus/sound/"
在这一行你可以告诉安装文件到哪里搜索比操作系统自带的驱动程序更新的版本。如果安装程序能找到一个更好的版本,则会自动安装。你可以在驱动程序页面看到更详细的解释。
DriverSigningPolicy=Ignore
这个选项可以强制安装程序安装没有经过WHQL 认证的驱动程序。该选项要和OemPnPDriversPath 选项联合使用。
AutoActivate = Yes
这个选项可以自动激活你的Windows XP。如果你想要自动激活Windows,你首先必须设置一个Internet 连接,而且也要确保你的产品序列号已经写在[UserData]字段下。
ProgramFilesDir="C:/My Program Files"
你可以在这里更改程序安装的默认位置,只要按照你的需要更改盘符和文件夹名即可。
CommonProgramFilesDir="C:/My Program Files/My Common Files"
你可以更改用于保存应用程序通用文件的文件夹的位置。只要按照你的需要更改盘符和文件夹名即可。
KeyboardLayout="United Kingdom"
通过设置你的键盘布局,这样可以避免在你的登录后任务栏上显示语言图标。所有可用的值的列表可以在这里看到。
[GuiUnattended]
AdminPassword=YourPassword or *
这个选项可以让你为Windows XP 中的Administrator 帐户设置密码。如果你在这里输入*则意味着没有设置任何密码。
EncryptedAdminPassword=Yes or No
这个选项用来告诉安装文件你的密码是否被加密,Yes 表示密码被加密了,而No 表示密码为被加密。如果你没有为Administrator 帐户设置密码,那么这个选项应该被设置为No。如
果你选择了Yes,Setup Manager 就会把密码加密保存在winnt.sif 文件中。
OEMSkipRegional=0 or 1
这个选项设置为0 会显示区域设置屏幕,而设置为1 就可以跳过这个屏幕。
TimeZone=85
这个选项告诉安装程序时区的设置,例如GMT 标准时间的值是85,每个不同的时区都由相应的数值表示,一个完整的时区和数值对照表可以在部署工具的ref.chm 文件中看到。
OemSkipWelcome=0 or 1
如果上面的OemPreinstall 选项你设置为No,那么这个选项你就要设置为0;而如果OemPreinstall 选项设置为Yes,则这个选项就要设置为1。如果设置为0,安装程序就会知道你不想在图形界面的安装过程中显示欢迎屏幕。(注意:这和“Windows 欢迎”界面不同,在那里你可以设置你的用户帐户)。
ProfilesDir="C:/Documents and Settings/"
你可以在这里更改Documents and Settings 文件夹的默认位置。
[Display]
BitsPerPel=32
这个选项指定了屏幕的色彩位数。可用的值有:32,24,16,还有8(也就是256 色)。
Xresolution=1024
这个选项指定了屏幕的默认横向分辨率。
Yresolution=768
这个选项指定了屏幕的默认纵向分辨率。
Vrefresh=85
这个选项设置了屏幕的刷新率。请确保这个设置没有超出你的显示器的可用范围,否则很有可能损坏显示器。
[UserData]
ProductKey=xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
这个选项告诉了安装程序在安装过程中使用的序列号。
FullName="Insert Name"
这个选项用来指定你的名字,这将会显示在系统属性的”注册给“项目下。
OrgName="Insert Organisation Name"
这个选项可以用来设置你的组织名称,这个也会显示在系统属性的“注册给”项目下。
ComputerName=Insert Name
在这个选项中你可以指定计算机的名称,这个名称会用在系统和网络中,而且该名称也会在系统属性的计算机名选项卡下。
[TapiLocation]
CountryCode=44
这个选项用来设置国家代码,例如英国就是44。对于其他国家的代码请参考部署工具中的ref.chm 文件。
Dialing=Tone
这个选项用来指定你的电话线路类型,可用的值是Tone 和Pulse。
[RegionalSettings]
LanguageGroup=1
这个选项用以指定安装的语言组类型,详细信息请参考部署工具中的ref.chm 文件。
Language=00000809
这个选项用以指定安装的语言类型,详细信息请参考部署工具中的ref.chm 文件。
[Identification]
JoinWorkgroup=WORKGROUP
这个选项用以指定将要加入的工作组。如果你没有使用网络,就可以把这个选项保持默认设
置。
[Networking]
InstallDefaultComponents=Yes or No
这个选项用以告诉安装程序你是否安装默认的网络组件。如果你设置了Yes 那么默认的网络组件就会被安装;如果你设置了No 就可以自定义要安装的协议、服务还有客户端。配置该选项的最佳方法是通过Setup Manager(setupmgr.exe)。
[Components]
msmsgs=off
这个选项可以让安装程序不安装Windows Messenger 4.6。
msnexplr=off
这个选项可以让安装程序不安装MSN Explorer 7。
freecell=off
这个选项可以让安装程序不安装空当接龙游戏。
hearts=off
这个选项可以让安装程序不安装红心大战游戏。
minesweeper=off
这个选项可以让安装程序不安装扫雷游戏。
pinball=off
这个选项可以让安装程序不安装三维弹球游戏。
solitaire=off
这个选项可以让安装程序不安装纸牌游戏。
spider=off
这个选项可以让安装程序不安装蜘蛛纸牌游戏。
zonegames=off
这个选项可以让安装程序不安装MSN Zone 在线游戏。
[Shell]
CustomDefaultThemeFile = "%WinDir%/Resources/Themes/MyTheme.theme"
这个选项用以指定默认情况下Windows 使用的主题,所指定的可以是系统自带的其他主题,或者是第三方的主题。通过指定这个选项,Windows XP 在你第一次登陆的时候就可以使用你喜欢的主题了。
DefaultStartPanelOff = Yes
这个选项告诉安装程序Windows XP 将会使用经典开始菜单,并且像其他程序一样在桌面上显示我的电脑、我的文档的图标。如果这个选项设置为No,安装程序就会使用默认的Windows XP 开始菜单。
DefaultThemesOff = Yes
这个选项用以告诉安装程序使用Windwos 经典主题。注意:如果你把CustomDefaultThemeFile 设置为Yes,那么这个选项将会覆盖CustomDefaultThemeFile 选项。
[GuiRunOnce]
%systemdrive%/install/batch_file1.cmd
GuiRunOnce 字段是用来指定批处理文件位置的,在这里指定的批处理文件会在安装程序运行完毕并登录系统后运行。
[IEPopupBlocker]
AllowedSites=www.msfn.org; www.microsoft.com;www.cctips.com
这个选项可以将站点的地址添加到IE 弹出窗口过滤器的白名单,你可以在这里添加任意数量的站点地址,不同地址之间使用半角分号隔开。
BlockPopups=Yes or No
BlockPopups 可以被设置为Yes 或No,默认情况下弹出窗口过滤器是被启用的。
FilterLevel=High, Medium or Low
FilterLevel 可以设置we 以下三个选项:High、Medium 还有Low:High - 过滤所有弹出窗口;Medium - 过滤大部分自动打开的弹出窗口(默认值);Low - 允许安全站点上的弹出窗口
ShowInformationBar=Yes or No
ShowInformationBar 可以被设置为Yes 或No。如果一个弹出窗口被过滤,或ActiveX 控件的安装企图被阻止,在IE 的地址栏下就会显示信息栏。该功能默认是启用的。
[WindowsFirewall]
Profiles = WindowsFirewall.TurnOffFirewall
[WindowsFirewall.TurnOffFirewall]
Mode = 0
上面的设置完全禁止了Windows 防火墙。如果你希望打开Windows 防火墙,但是想要预设其中的一些设置,请在ref.chm 文件的Unattended.txt > [WindowsFirewall]路径下查看详细内容。因为内容太多,因此这里不过多讨论。至于更详细的内容,你可以查看部署工具中的ref.chm 文件

------------------------------------------------------------------------------------------------------------------------------------------------

Intl.inf 专题篇

Intl.inf是 Windows XP 简体中文版中的所有代码页文件, 134 个, 11.3 MB.
看起来体积不大, 不过好多都用不到. 就一般人而言, 最多也就用到那么几十个.
我会在后面的帖子里把一些重要的代码页分类介绍的.

big5.nls 繁体关键代码页
bopomofo.nls 繁体关键代码页
c_037.nls 37 (IBM EBCDIC - 美国/加拿大)
c_10000.nls 10000 (MAC - 罗马)
c_10001.nls 10001 (MAC - 日文)
c_10002.nls 10002 (MAC - 繁体中文 Big5)
c_10003.nls 10003 (MAC - 韩文)
c_10004.nls 10004 (MAC - 阿拉伯文)
c_10005.nls 10005 (MAC - 希伯来文)
c_10006.nls 10006 (MAC - 希腊文 I)
c_10007.nls 10007 (MAC - 西里尔文)
c_10008.nls 10008 (MAC - 简体中文 GB 2312)
c_10010.nls 10010 (MAC - 罗马尼亚)
c_10017.nls 10017 (MAC - 乌克兰)
c_10021.nls 10021 (MAC - 泰文)
c_10029.nls 10029 (MAC - 拉丁文 II)
c_10079.nls 10079 (MAC - 冰岛文)
c_10081.nls 10081 (MAC - 土耳其文)
c_10082.nls 10082 (MAC - 克罗地亚)
c_1026.nls 1026 (IBM EBCDIC - 土耳其语 (拉丁-5))
c_1047.nls 1047 (IBM EBCDIC - 拉丁文-1/公开系统)
c_1140.nls 1140 (IBM EBCDIC - 美国/加拿大(37 + Euro))
c_1141.nls 1141 (IBM EBCDIC - 德国(20273 + Euro))
c_1142.nls 1142 (IBM EBCDIC - 丹麦/挪威(20277 + Euro))
c_1143.nls 1143 (IBM EBCDIC - 芬兰/瑞典(20278 + Euro))
c_1144.nls 1144 (IBM EBCDIC - 意大利(20280 + Euro))
c_1145.nls 1145 (IBM EBCDIC - 拉丁美洲/西班牙(20284 + Euro))
c_1146.nls 1146 (IBM EBCDIC - 英国(20285 + Euro))
c_1147.nls 1147 (IBM EBCDIC - 法国(20297 + Euro))
c_1148.nls 1148 (IBM EBCDIC - 国际(500 + Euro))
c_1149.nls 1149 (IBM EBCDIC - 冰岛(20871 + Euro))
c_1250.nls 1250 (ANSI - 中欧)
c_1251.nls 1251 (ANSI - 西里尔文)
c_1252.nls 1252 (ANSI - 拉丁文 I)
c_1253.nls 1253 (ANSI - 希腊文)
c_1254.nls 1254 (ANSI - 土耳其文)
c_1255.nls 1255 (ANSI - 希伯来文)
c_1256.nls 1256 (ANSI - 阿拉伯文)
c_1257.nls 1257 (ANSI - 波罗的海文)
c_1258.nls 1258 (ANSI/OEM - 越南)
c_1361.nls 1361 (韩文 - Johab)
c_20000.nls 20000 (CNS - 台湾)
c_20001.nls 20001 (TCA - 台湾)
c_20002.nls 20002 (Eten - 台湾)
c_20003.nls 20003 (IBM5550 - 台湾)
c_20004.nls 20004 (TeleText - 台湾)
c_20005.nls 20005 (Wang - 台湾)
c_20105.nls 20105 (IA5 IRV 国际字母表 No.5)
c_20106.nls 20106 (IA5 德文)
c_20107.nls 20107 (IA5 瑞典文)
c_20108.nls 20108 (IA5 挪威文)
c_20127.nls 20127 (US-ASCII)
c_20261.nls 20261 (T.61)
c_20269.nls 20269 (ISO 6937 Non-Spacing Accent)
c_20273.nls 20273 (IBM EBCDIC - 德国)
c_20277.nls 20277 (IBM EBCDIC - 丹麦/挪威)
c_20278.nls 20278 (IBM EBCDIC - 芬兰/瑞典)
c_20280.nls 20280 (IBM EBCDIC - 意大利)
c_20284.nls 20284 (IBM EBCDIC - 拉丁美洲/西班牙)
c_20285.nls 20285 (IBM EBCDIC - 英国)
c_20290.nls 20290 (IBM EBCDIC - 扩展式日文片假名)
c_20297.nls 20297 (IBM EBCDIC - 法国)
c_20420.nls 20420 (IBM EBCDIC - 阿拉伯文)
c_20423.nls 20423 (IBM EBCDIC - 希腊文)
c_20424.nls 20424 (IBM EBCDIC - 希伯来文)
c_20833.nls 20833 (IBM EBCDIC - 扩展式韩文)
c_20838.nls 20838 (IBM EBCDIC - 泰文)
c_20866.nls 20866 (俄文 - KOI8)
c_20871.nls 20871 (IBM EBCDIC - 冰岛文)
c_20880.nls 20880 (IBM EBCDIC - 西里尔文(俄语))
c_20905.nls 20905 (IBM EBCDIC - 土耳其文)
c_20924.nls 20924 (IBM EBCDIC - 拉丁文-1/公开系统(1047 + Euro))
c_20930.nls ?????
c_20931.nls ?????
c_20932.nls 20932 (JIS X 0208-1990 & 0212-1990)
c_20933.nls ?????
c_20935.nls ?????
c_20936.nls 20936 (简体中文 GB2312)
c_20937.nls ?????
c_20939.nls ?????
c_20949.nls 20949 (Korean Wansung)
c_20950.nls ?????
c_21025.nls 21025 (IBM EBCDIC - 西里尔文(塞尔维亚语、保加利亚语))
c_21027.nls 21027 (Ext Alpha 小写)
c_21866.nls 21866 (乌克兰语 - KOI8-U)
c_28591.nls 28591 (ISO 8859-1 拉丁文 I)
c_28592.nls 28592 (ISO 8859-2 中欧)
c_28593.nls 28593 (ISO 8859-3 拉丁文 3)
c_28594.nls 28594 (ISO 8859-4 波罗的海文)
c_28595.nls 28595 (ISO 8859-5 西里尔文)
c_28596.nls 28596 (ISO 8859-6 阿拉伯文)
c_28597.nls 28597 (ISO 8859-7 希腊文)
c_28598.nls 28598 (ISO 8859-8 希伯来文: 视觉排序)
c_28599.nls 28599 (ISO 8859-9 拉丁文 5)
c_28603.nls 28603 (ISO/IEC 8859-13:1998 (Lithuanian))
c_28605.nls 28605 (ISO 8859-15 拉丁文 9)
c_437.nls 437 (OEM - 美国)
c_500.nls 500 (IBM EBCDIC - 国际)
c_708.nls 708 (阿拉伯文 - ASMO)
c_720.nls 720 (阿拉伯文 - 透明 ASMO)
c_737.nls 737 (OEM - 希腊文 437G)
c_775.nls 775 (OEM - 波罗的海文)
c_850.nls 850 (OEM - 多语拉丁文 I)
c_852.nls 852 (OEM - 拉丁文 II)
c_855.nls 855 (OEM - 西里尔文)
c_857.nls 857 (OEM - 土耳其文)
c_858.nls 858 (OEM - 多语拉丁文 I + 欧洲)
c_860.nls 860 (OEM - 葡萄牙文)
c_861.nls 861 (OEM - 冰岛文)
c_862.nls 862 (OEM - 希伯来文)
c_863.nls 863 (OEM - 加拿大法语)
c_864.nls 864 (OEM - 阿拉伯文)
c_865.nls 865 (OEM - 挪威文)
c_866.nls 866 (OEM - 俄文)
c_869.nls 869 (OEM - 现代希腊文)
c_870.nls 870 (IBM EBCDIC - 多语/ROECE (拉丁文-2))
c_874.nls 874 (ANSI/OEM - 泰文)
c_875.nls 875 (IBM EBCDIC - 现代希腊文)
c_932.nls 932 (ANSI/OEM - 日文 Shift-JIS)
c_936.nls 936 (ANSI/OEM - 简体中文 GBK)
c_949.nls 949 (ANSI/OEM - 韩文)
c_950.nls 950 (ANSI/OEM - 繁体中文 Big5)
ctype.nls ????? 某个关键代码页
geo.nls ????? 某个关键代码页
ksc.nls 韩文关键代码页
l_except.nls ????? 某个关键代码页
l_intl.nls ????? 某个关键代码页
locale.nls ????? 某个关键代码页
prc.nls 简体关键代码页
prcp.nls 简体关键代码页
sortkey.nls ????? 某个关键代码页
sorttbls.nls ????? 某个关键代码页
unicode.nls Unicode 关键代码页
xjis.nls 日文关键代码页

因为日常不可避免的需要接触到西方拉丁字符, 所以大家删除这里的代码页时要注意啊. 其它的西欧语言也就算了, 跟美国相关的就要小心一些了, 没办法, 谁让美国是老大呐.

因为使用西方拉丁文系列的国家实在是太多了, 所以在此只列出一些非常重要的, 至于需要经常接触某国语言的朋友, 那么就保留 nLite 中相关的国家语言吧.

关键代码页:
c_1252.nls 1252 (ANSI - 拉丁文 I) ;这个代码页非常重要, 千万不要删啊.

建议不要删除的代码页:
C_437.nls 437 (OEM - 美国)
C_28591.nls 28591 (ISO 8859-1 拉丁文 I)
C_20127.nls 20127 (US-ASCII)

可以考虑删除的代码页:
C_850.nls 850 (OEM - 多语拉丁文 I)
C_852.nls 852 (OEM - 拉丁文 II)
C_858.nls 858 (OEM - 多语拉丁文 I + 欧洲)
C_037.nls 37 (IBM EBCDIC - 美国/加拿大)
C_1047.nls 1047 (IBM EBCDIC - 拉丁文-1/公开系统)
C_20924.nls 20924 (IBM EBCDIC - 拉丁文-1/公开系统(1047 + Euro))
C_28593.nls 28593 (ISO 8859-3 拉丁文 3)
C_28599.nls 28599 (ISO 8859-9 拉丁文 5)
C_28605.nls 28605 (ISO 8859-15 拉丁文 9)

Unicode 非常重要, 是系统的核心模块.没有看到关于以下 Unicode 的 nls 代码页文件, 因为 Windows 系统内部支持 Unicode. 不过估计跟 unicode.nls 有关.

Unicode 的相关代码页:
"65000 (UTF-7)"
"65001 (UTF-8)"

我们平时当然是使用简体中文系统多一些, 那么为了避免出现麻烦, 就不要删除跟简体中文有关的代码页了. 把它们全都留下吧, 省得哪天出问题.

简体中文代码页相关文件:
PRC.nls ;这个必须保留, 估计专用于中华人民共和国的
PRC.nls ;这个必须保留, 估计专用于中华人民共和国的
C_936.NL_ 936 (ANSI/OEM - 简体中文 GBK)
C_10008.NL_ 10008 (MAC - 简体中文 GB 2312)
c_is2022.dll 50227 (ISO-2022 简体中文)
c_is2022.dll 52936 (HZ-GB2312 简体中文)
无对应文件 51936 (EUC-简体中文)
无对应文件 50935 (IBM EBCDIC - 简体中文)
c_20936.nls 20936 (简体中文 GB2312)
c_g18030.dll 54936 (GB18030 简体中文)

我们平时还是会经常接触到繁体中文的, 所以最好选留一些代码页.

繁体中文代码页相关文件:
big5.nls 繁体关键代码页
bopomofo.nls 繁体关键代码页
c_10002.nls 10002 (MAC - 繁体中文 Big5)
c_20000.nls 20000 (CNS - 台湾)
c_20001.nls 20001 (TCA - 台湾)
c_20002.nls 20002 (Eten - 台湾)
c_20003.nls 20003 (IBM5550 - 台湾)
c_20004.nls 20004 (TeleText - 台湾)
c_20005.nls 20005 (Wang - 台湾)
c_950.nls 950 (ANSI/OEM - 繁体中文 Big5)
没有对应文件 50229 (ISO-2022 繁体中文)
没有对应文件 51950 (EUC-繁体中文)
没有对应文件 50937 (IBM EBCDIC - 美国/加拿大和繁体中文)

估计用的到日文的朋友不多, 最多也就看两眼而已.

繁体中文代码页相关文件:
c_10001.nls 10001 (MAC - 日文)
c_20290.nls 20290 (IBM EBCDIC - 扩展式日文片假名)
c_932.nls 932 (ANSI/OEM - 日文 Shift-JIS)
xjis.nls 日文关键代码页
c_21027.nls 21027 (Ext Alpha 小写)
c_20932.nls 20932 (JIS X 0208-1990 & 0212-1990)
没有对应文件 50220 (ISO-2022 不带半形片假名的日文)
没有对应文件 50221 (ISO-2022 带半形片假名的日文)
没有对应文件 50222 (ISO-2022 日文 JIS X 0201-1989)
没有对应文件 51932 (EUC-日文)
没有对应文件 50930 (IBM EBCDIC - 扩展式日文(片假名)和日文)
没有对应文件 50931 (IBM EBCDIC - 美国/加拿大和日文)
没有对应文件 50939 (IBM EBCDIC - 扩展式日文(拉丁)和日文)

用韩文的朋友应该更少了吧

韩文代码页相关文件:
c_10003.nls 10003 (MAC - 韩文)
c_1361.nls 1361 (韩文 - Johab)
c_20949.nls 20949 (Korean Wansung)
c_949.nls 949 (ANSI/OEM - 韩文)
ksc.nls 韩文关键代码页
没有对应文件 20833 (IBM EBCDIC - 扩展式韩文)
没有对应文件 50225 (ISO-2022 韩文)
没有对应文件 51949 (EUC-韩文)
没有对应文件 50933 (IBM EBCDIC - 扩展式韩文和韩文)

------------------------------------------------------------------------------------------------------------------------------------------------

Txtsetup.inf 专题篇

Txtsetup.sif 是一个安装信息文件 (sif), 主要用于 Windows 的文本安装模式(就如其名). 而且, 它还可能会被其它的一些东西使用, 例如, Windows PE 启动时也会用到它 (Windows PE 用到了文本安装模式的末尾和 GUI 安装模式的开始部分). 文本模式完成后, 这个文件就没什么用了; 它不会被复制到 Windows 安装文件中 (GUI 安装模式用到的安装文件). 因为 Windows 不会用到它, 所以, 像是系统文件保护 (SFC) 这样的功能就不会影响到它. 它也没有数字签名, 因此你可以随意修改它而不会出现问题.
你可以利用 txtsetup.sif 向你的安装文件中添加第三方驱动, 修改安装Windows 的最小系统需求, 添加或删除注册表预设, 以及更多.

利用 Txtsetup.sif 添加或删除文件.
若想把 txtsetup.sif 中的某行移除掉, 那么应该在此行前添加一个分号(;)或是把这行整个的删掉. 通常, 把 txtsetup.sif 中的某行删掉之后, 那么还需要把 dosnet.inf 中的对应行删掉.
如果你想添加一行, 那就比较复杂了. 下面是txtsetup.sif 的某个示例行, 我会按照我的理解进行.
locsecw.chm = 1,,,,,,,21,0,0,localsec.chm
locsecw.chm 是 Windows 安装文件中的某个文件.
1 代表着它是个初始 (RTM) XP 文件. 1 的定义来自于[SourceDisksNames.x86]. 通常你会看到 1 或 100, 1 表示它是未打补丁的初始文件, 100 代表它是个SPx 文件 (SP1, SP2..SPx).
21 代表着它的复制目的地, 其相对于 %windir% 文件夹. 在这里, 21 是让安装程序把 locsecw.chm 复制到 %windir%help. 具体哪些值代表哪些目录可以在[WinntDirectories] 中找到. 一般情况下, [WinntDirectories] 中定义的目录都是相对于 %windir% 文件夹的子目录, 这就意味着你把文件添加到txtsetup.sif 中, 那么它就会被复制到 %windir% 文件夹中 (可能在其子文件夹中).
我无法确定这两个 0 的意义.
就如你在示例中所看到的一样, 可以在行的末尾重命名要复制的文件. Microsoft 用它来区分 Windows XP Home 和 Pro 版. Home 的文件带有P, Pro 的文件带有 W. W 可能是代表着工作站 (WorkStation) 的意思. P 可能是代表着个人版 (Personal) 的意思, Windows XP Home 最初就叫做 Whistler Personal.
示例:
cmconW.chm = 1,,,,,,,21,0,0,cmconcepts.chm - xp pro txtsetup.sif
cmconP.chm = 1,,,,,,,21,0,0,cmconcepts.chm - xp home txtsetup.sif
就如你所见的一样, XP Home 和 XP Pro 的文件并不相同, 但是最后复制到系统中的文件名称都一样. 同时请注意, txtsetup.sif 支持长文件名.
现在, 我们来看看另一行, 粗体部分相当重要:
autofmt.exe = 1,,,,,,_x,2,0,0,,1,2
_x 代表着这个安装盘上的这个文件没有经过压缩. 如果没有这个, 那么安装程序会认为这个文件已被压缩过了. 这个对于保证安全性和可靠性很重要. 每个 XP 文件都被列在了 layout.inf 中, 包括这个文件的大小 (按字节计算). 很明显, 一个文件的压缩前和压缩后的大小是不会相同的. 如果 txtsetup.sif 告诉安装程序 “某个文件未被压缩”, 那么安装程序就会在layout.inf 中查找它的文件大小以确保这个文件未经修改或是损坏. 如果文件大小与 layout.inf 中记录的不同, 那么 XP 安装程序就会报错并停止安装. 这个能够保证安装程序的安全性, 以确定文件是否被修改过. 它还能验证文件是否已被损坏. 如果文件已被损坏, 那么稍后安装时就可能会出现问题. 如果你以 _x 为关键字在 txtsetup.sif 进行搜索, 那么你就能找到所有未经压缩的 Windows 安装文件.
有个很重要的事情就是, txtsetup.sif 并没有告诉安装程序应当从哪里获取安装文件. 它唯一的功能就是把按照正确的文件名把文件复制到正确的目录中. 从硬盘安装时, 安装程序会先利用 dosnet.inf 中的定义把文件复制到C:$WIN_NT$.~LS 中. 然后, 安装程序才会利用 Txtsetup.sif 把这个文件夹中的文件复制到对应的文件夹中.
因为只能利用 txtsetup.sif 把文件复制到 %windir% 文件夹下, 所以它的用途有限. 主要是用它来添加注册表预设 (%windir%system32config) 和驱动 (%windir%system32config).
稍后我会介绍如何把第三方驱动集成到 XP 安装文件中. 在我的 “Using txtsetup.sif to add registry settings” 中, 我介绍了如何利用txtsetup.sif 添加自定义的注册表预设文件 (.inf 文件).

举例说明:
比如说, 你想把 tweakui 集成到 Windows 安装文件中, 但是你不想使用无人值守的方式. 那么利用 txtsetup.sif 可以很轻松地做到这点.
第一步: 下载 Tweak UI
在这里下载 TweakUI. 下载之后, 用 WinRAR 把 tweakui.exe 提取出来, 或是先安装这个程序再把windowssystem32 中的 tweakui.exe 复制出来.
第二步: 把 tweakui.exe 复制到 XP 安装文件所在的文件夹中
把你的 XP 安装盘上的文件复制到硬盘上, 然后把 tweakui.exe 放到 i386 文件夹中.
第三步: 修改 txtsetup.sif 和 dosnet.inf
把以下行添加到 dosnet.inf 中:
d1,tweakui.exe
把以下行添加到txtsetup.sif 中:
tweakui.exe = 1,,,,,,,2,0,0
现在运行安装程序, dosnet.inf 会把 tweakui.exe 复制到C:$WIN_NT$.~LSi386 中. 接着重启之后, 就会进入文本安装模式了, 而 txtsetup.sif 会把 C:$WIN_NT$.~LSi386 中的tweakui.exe 复制到 C:WindowsSystem32 中. 当整个安装进程完成之后, 若要运行 tweakui.exe, 那么只需转到 “开始”>”运行”>输入: tweakui, 点击确定就行了.
你可能想知道我为什么不在新添加的行中使用 _x. 这是因为 tweakui.exe 不是 XP 的初始安装文件, XP 不需要检查它 (因为它未在 layout.inf 中进行定义).
你也可以用这个方法把 msconfig.exe 集成到 Win2000 的安装文件中. 只需用 msconfig.exe 替换掉tweakui.exe, 其它的都一样.
若想了解更多信息, 请查看 MSFN - Problem installing PowerToys from svcpack

更新 (2/10/04)
raskren 提交了一些关于txtsetup.sif 的有用信息, 这是他从一本 Windows 2000 的书中了解到的. 我不想重新编写这个文档, 因此我只把 raskren 提供的新信息添加到这里. 初始帖子在这里, MSFN - Switches in TXTSETUP.SIF
以下行说明了[SourceDisksFiles] 区段中每行的语法:


filename_on_source=diskid,subdir,upgradecode,newinstallcode,spare,spare,newfilename
源文件名=磁盘号,子目录,升级代码,新建安装代码,备用,备用,新文件名

额外字段由逗号(,)隔开, 这是 Windows NT 指定的.

当从软盘上开始安装时就会用到 diskid 了. (或者是多张光盘?)

subdir 就是复制文件的目的文件夹. Subdir 代码是在 TXTSETUP.SIF 的 [WinntDirectories] 区段中进行定义的.

upgradecode 是个个位数, 用于决定是否要升级比较老版本的同名文件. 它可以决定是否要在文本安装模式下复制这个文件.

以下是用于决定文件复制的代码定义.

状态代码 – 复制操作
0 – 总是复制这个文件
1 - 只有当同名文件存在于安装目录中时, 才复制这个文件
2 - 只有当安装目录中没有同名文件时, 才复制这个文件
3 - 不要复制这个文件

newinstallcode 是个个位数, 当全新安装时就要用到这个. 它可以决定是否要在文本安装模式下复制这个文件. newinstallcode 为可选项; 如果没有包含这个代码, 则文件不会被复制 (代码 = 3).

newfilename 用于重命名要复制的文件. 以下举例说明.

autochk.exe = 100,,,,,,_x,2,0,0,,1,2

此行的定义是, AUTOCHK.EXE 这个文件是在安装光盘上, 没有压缩, 会被复制到 %WinDir%system32 文件夹中(可在[WinntDirectories] 中查到 2 的定义). “upgrade code” 和“new installation code” 都是 0, 这意味着不管原来是 Win2000 还是要全新安装, 这个文件都会被复制到目的文件夹中..

你可能感兴趣的:(杂项)