|  | 
3#
 
 
 楼主|
发表于 2006-11-19 22:57:53
|
只看该作者 
| 下面是 RXPE 登录和扩展设置工具的说明,源代码在这里下载:http://www.yonsm.net/read.php?286 
 欢迎使用 RXPE - Rescue Windows XP Environment 扩展设置工具!
 
 
 一、简介
 
 RXPE 是为扩展设置 Windows PE 而制作的小工具。
 
 ◎ 支持常规的扩展设置命令。
 ◎ 支持外部命令增加程序的功能。
 ◎ 支持格式统一的命令行和命令列表文件。
 ◎ 细微周到的功能支持。
 ◎ 短小精干,运行迅速。
 ◎ 源代码公开,方便更改定制。在源代码中增加扩展命令非常容易。
 ◎ 完全替代系统登录程序,且登录操作完全使用 INI 命令文件配置,修改 INI 就能完全控制登录步骤。
 
 
 二、命令
 
 ■ Regi <\子项\>[键值][=[#]数据]
 
 ◎ 功能:设置或删除注册表数据。
 
 ◎ 参数:
 ※ 子项              所选 ROOTKEY 下注册表项的完整名。
 
 ※ 键值              要操作的键值。如果省略,则操作默认键值;如果为“!”且没有“=”,则用于删除整个子项。
 
 ※ 数据              要设置的数据。如果没有“=”则删除;如果有“#”则表示 REG_DWORD 整数类型的数据,否则为字符串。
 
 ◎ 示例:Regi HKCU\SOFTWRE\RXPE\Version=#1200
 
 ◎ 备注:无。
 
 ■ Envi [名称][=值]
 
 ◎ 功能:设置环境变量。
 
 ◎ 参数:分别指定环境变量名称和值。如果不指定值,则删除环境变量;如果不指定名称和值,则设置以下环境变量:
 Favorites      收藏夹目录
 Desktop        桌面目录
 StartMenu      开始菜单目录
 Startup        启动菜单目录
 Programs       程序菜单目录
 Recent         新近文件目录
 SendTo         发送到目录
 System         系统目录
 Windows        Windows 目录
 Personal       我的文档目录
 QuickLaunch    快速启动目录
 
 ◎ 示例:ENVI
 
 ◎ 备注:如果命令 ENVI 为小写,则仅设置当前程序的环境变量。如果名称的最后一个字符为大写,才会通知系系使环境变量更改生效。
 
 ■ Link <快捷方式路径><,目标路径>[,运行参数][,图标路径][,图标索引]
 
 ◎ 功能:添加快捷方式。
 
 ◎ 参数:
 
 ※ 快捷方式路径      指定要生成的快捷方式的路径(.lnk 可以省略)。
 
 ※ 目标路径          指定快捷方式的目标路径。如果目标路径的结尾处有字符“?”,则快捷方式的起始位置(或者说当前目录)为临时文件夹“%TEMP%”;否则,为目标文件所在的目录。如果目标路径的结尾处有字符“<”,则快捷方式的启动方式为最小化方式启动;如果是“>”,则以隐藏方式启动;否则,为正常方式启动。
 
 ※ 运行参数          目标程序运行参数。
 
 ※ 图标路径          快捷方式图标的路径。
 
 ※ 图标索引          快捷方式图标的在文件资源中的序号,0 为第一个图标(不填写则默认)。
 
 ◎ 示例:Link $Desktop\宽带连接,RASPPPOE.CMD<,,RASDIAL.DLL,19
 
 ◎ 备注:无。
 
 ■ Dele <文件路径>
 
 ◎ 功能:删除文件或目录。
 
 ◎ 参数:指定要删除的文件路径,支持环境变量扩展和通配符。
 
 ◎ 示例:Dele %SystemRoot%\INF\*.PNF
 
 ◎ 备注:如果以 RAMDISK 方式启动系统,可删除一些启动后无用的文件(如 2 MB 的 NTOSKRNL.EXE)来增加 RAMDISK 的可写空间。
 
 ■ Devi
 
 ◎ 功能:从 CAB 文件中解压缩需要的驱动程序到相关目录中。此命令使用自定的(而非系统的)驱动搜索算法,可快速解压缩可能用到的驱动程序,不会安装驱动。(“.INF”文件解压缩到 %SystemRoot%\INF;“.SYS”文件解压缩到 %SystemRoot%\SYSTEM32\DRIVERS;“.DLL”文件解压缩到 %SystemRoot%\SYSTEM32 中;其它文件解压缩到 %SystemRoot% 中)
 
 ◎ 参数:CAB 完整路径。把每个驱动单独放在一个目录中,然后把所有的驱动程序按备注中的说明,打包成 CAB 即可。
 
 ◎ 示例:DEVI %SystemRoot%\DRV.CAB
 
 ◎ 备注:CAB 文件中的 INF 文件必须以“0”开头,用于保证 CAB 中 INF 文件在一个目录的最前面。解压缩后,将会自动去除这个字符。可以使用改名工具,批量添加“0”前缀。可以用此功能释放驱动程序,然后删除掉 CAB 文件(如果是 RAMDISK 方式启动),以腾出空间。
 
 ■ Send <按键代码1>[,按键代码2][,按键代码3]...
 
 ◎ 功能:模拟按键。
 
 ◎ 参数:虚拟按键代码,如 VK_RETURN,请参相关考编程文档。
 
 ◎ 示例:Send 0x12<,0x09<,0x09>,0x12>
 
 ◎ 备注:上面的示例模拟 Alt+Tab。如果按键代码以“<”结束,则仅模拟按键按下;“>”则仅模拟按键弹起;否则模拟按下并弹起。按键代码支持 16 进制,如“SendKey 0x90”表示按下 NumLock 键。
 
 ■ Wait <毫秒>
 
 ◎ 功能:等待指定时间后再继续执行命令。
 
 ◎ 参数:指定时间,单位为毫秒。
 
 ◎ 示例:Wait 5000
 
 ◎ 备注:无。
 
 ■ Shut [0|1|2]...
 
 ◎ 功能:注销|关机|重起。
 
 ◎ 参数:关机方式。
 
 ◎ 示例:Shut
 
 ◎ 备注:使用经修改的 USER32.DLL,配合此命令使用,将可以拦截所有的关闭系统调用,达到正确关闭的目的(注意,此功能是快速关机,可能不会保存所有数据)。
 
 ■ Exec <程序路径>[ 参数]
 
 ◎ 功能:执行外部命令。
 
 ◎ 格式:执行外部命令。
 
 ◎ 参数:指定程序路径。
 
 ◎ 示例:ExeCmd CMD.EXE /C "DEL /Q /F %TEMP%"
 
 ◎ 备注:如果路径结尾处有字符“?”,则等待外部命令执行完后才继续执行下一条命令;否则立即返回并执行下一条。如果目标路径的结尾处有字符“<”,则快捷方式的启动方式为最小化方式启动;如果是“>”,则以隐藏方式启动;否则,为正常方式启动。另外,此命令可以支持使用特定参数调用 DLL 函数,功能比 RegSvr32 强大的多,命令格式为“[,[#]参数1][,[#]参数2][,[#]参数3][,[#]参数4]”。
 
 ■ Kill <进程名称>
 
 ◎ 功能:强制终止指定的进程。
 
 ◎ 参数:进程名称,即 EXE 文件名(不包含路径)。
 
 ◎ 示例:Kill WinLogon
 
 ◎ 备注:此命令将终止与 <进程名称> 前部分匹配的所有进程。
 
 ■ Load [文件路径]
 
 ◎ 功能:逐条运行命令文件中的命令。
 
 ◎ 参数:指定文件的路径。如果省略,假设 RXPE 本身的 EXE 文件名为 RXPE.EXE,则自动搜索每个分区上的 RXPE.INI 和 RXPE\RXPE.INI 文件。把 RXPE.EXE 改名即可实现自定义命令文件的名称。
 
 ◎ 示例:Load
 
 ◎ 备注:RXPE 支持把所有的命令写在一个文件种逐条执行。RXPE 命令文件最后一行必须是空行,否则最后一行无法被执行。注意,如果在命令文件中使用此命令,要仔细分析,防止嵌套调用。
 
 ■ Init [文件路径]
 
 ◎ 功能:初始化桌面,然后执行 Load 功能。
 
 ◎ 参数:请参看 Load。
 
 ◎ 示例:Init
 
 ◎ 备注:此功能用于代替 WinLogon 登录系统,RXPE 可以完全控制登录进度。
 
 ■ Logo [[!]文件路径]
 
 ◎ 功能:显示启动画面。
 
 ◎ 参数:图片文件路径,支持 BMP/JPG/PNG/GIF 等各式(需要 GDI+ 支持)。如果参数为空,则关闭启动画面(渐隐淡出)。
 
 ◎ 示例:Logo !%SystemRoot%\RXPE.JPG
 
 ◎ 备注:上例中,将使用内部图片显示启动画面。“!”表示后台执行,不阻塞。
 
 ■ Text [文字][#颜色][,Left][,Top][,Right][,Bottom]
 
 ◎ 功能:在启动画面中显示进度文字。
 
 ◎ 参数:文字为空则不显示文字。
 
 ◎ 示例:TEXT 正在注册组件……#0xFFDDDD,4,745,128,768
 
 ◎ 备注:首次显示文字的时候必须指定位置,否则不会显示。
 
 ■ Help
 
 ◎ 功能:显示帮助信息。
 
 ◎ 参数:无。
 
 ◎ 示例:Help
 
 ◎ 备注:无。
 
 
 三、备注
 
 ◎ RXPE 命令文件必须使用 UNICODE 格式。
 
 ◎ RXPE 命令不区分大小写(ENVI 除外)。
 
 ◎ 上面的命令中 <> 内的参数表示必须输入,[] 内的表示可以省略。
 
 ◎ RXPE 中使用的路径支持环境变量替换(如“%TEMP%\X.TXT”)。
 
 ◎ 通常情况下,您只需要编辑一个命令文件 RXPE.INI,里面列出需要执行的命令。然后在 PE 启动的时候执行“RXPE.EXE Init”即可。
 
 
 四、致谢
 
 ◎ 感谢 老九 的热心帮助和意见。
 ◎ 感谢 无忧论坛 提供的讨论场所。
 
 
 要获取更多信息,请访问 WWW.YONSM.NET
 
 
 Yonsm
 Yonsm@163.com
 WWW.Yonsm.NET
 2007.1.6,杭州
 
 
 
 下面是一楼的 WinPE 中使用的命令文件,基本上一看就明白:
 
 LOGO !%SystemRoot%\RXPE.JPG
 TEXT 正在检测硬件……#0xFFDDDD,4,745,128,768
 DELE %SystemRoot%\SYSTEM32\NTOSKRNL.EXE
 DEVI %SystemRoot%\NETDRV.CAB
 DELE %SystemRoot%\NETDRV.CAB
 
 TEXT 正在注册组件……
 EXEC SHELL32.DLL,DllInstall,#1,I
 EXEC BROWSEUI.DLL,DllInstall,#1,I
 EXEC SHDOCVW.DLL,DllInstall,#1,I
 //EXEC SHELL32.DLL,DllInstall,#1,U
 
 TEXT 正在设定系统……
 REGI HKLM\Software\Microsoft\Windows\CurrentVersion\ShellServiceObjectDelayLoad\PostBootReminder=
 REGI HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace\{7007ACC7-3202-11D1-AAD2-00805FC1270E}\!
 REGI HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace\{D20EA4E1-3957-11d2-A40B-0C5020524153}\!
 
 REGI HKLM\SOFTWARE\FinalData\FinalData\2.0.1.1028\Name=Yonsm
 REGI HKLM\SOFTWARE\FinalData\FinalData\2.0.1.1028\Company=Yonsm.NET
 REGI HKLM\SOFTWARE\FinalData\FinalData\2.0.1.1028\Serial=NTC39431-1331-015781430379
 
 REGI HKCU\Software\EasyBoot Systems\UltraISO\5.0\UserName=Yonsm
 REGI HKCU\Software\EasyBoot Systems\UltraISO\5.0\Registration=f8afe7d9aebeb6a9d6aaa3b2a4e2ce99
 
 TEXT 正在创建快捷方式……
 ENVi
 
 LINK %Desktop%\本地连接,PENETCFG.EXE
 LINK %Desktop%\宽带连接,RASPPPOE.CMD<,,SHELL32.DLL,14
 
 LINK %QuickLaunch%\Windows 资源管理器,EXPLORER.EXE,,EXPLORER.EXE,1
 LINK %QuickLaunch%\记事本,NOTEPAD.EXE
 LINK %QuickLaunch%\显示桌面,DESKTOP.SCF
 
 LINK %Programs%\附件\画图,MSPAINT.EXE
 LINK %Programs%\附件\记事本,NOTEPAD.EXE
 LINK %Programs%\附件\计算器,CALC.EXE
 LINK %Programs%\附件\命令提示符,CMD.EXE
 LINK %Programs%\附件\注册表编辑器,REGEDIT.EXE
 LINK %Programs%\附件\资源管理器,EXPLORER.EXE,,EXPLORER.EXE,1
 LINK %Programs%\实用工具\Opera,%ProgramFiles%\OPERA\OPERA.EXE
 LINK %Programs%\实用工具\UltraEdit,%ProgramFiles%\ULTRAEDIT\UEDIT32.EXE
 LINK %Programs%\实用工具\UltraISO,%ProgramFiles%\ULTRAISO\ULTRAISO.EXE
 LINK %Programs%\实用工具\WinHEX,%ProgramFiles%\WINHEX\WINHEX.EXE
 LINK %Programs%\实用工具\WinRAR,%ProgramFiles%\WINRAR\WINRAR.EXE
 LINK %Programs%\实用工具\极点中文,%ProgramFiles%\FREEWB\REGISTRY.EXE
 LINK %Programs%\实用工具\虚拟磁盘,%ProgramFiles%\VDRIVE\VDRIVE.EXE
 LINK %Programs%\系统工具\分区管理器,%ProgramFiles%\WINPM\WINPM.EXE
 LINK %Programs%\系统工具\克隆文件浏览,%ProgramFiles%\GHOST\GHOSTEXP.EXE
 LINK %Programs%\系统工具\诺顿磁盘医生,%ProgramFiles%\NDD\NDD32.EXE
 LINK %Programs%\系统工具\诺顿克隆精灵,%ProgramFiles%\GHOST\GHOST32.EXE
 LINK %Programs%\系统工具\文件恢复工具,%ProgramFiles%\FINALDATA\FINALDATA.EXE
 LINK %Programs%\系统工具\系统检测工具,%ProgramFiles%\EVEREST\EVEREST.EXE
 LINK %Programs%\应急工具\目标系统选择,%ProgramFiles%\ERDCMD\ERDROOT.EXE,,SHELL32.DLL,21
 LINK %Programs%\应急工具\系统管理工具,%ProgramFiles%\ERDCMD\COMPMGMT.EXE
 LINK %Programs%\应急工具\用户密码恢复,%ProgramFiles%\ERDCMD\LOCKSMITH.EXE
 LINK %Programs%\应急工具\注册表编辑器,%ProgramFiles%\ERDCMD\REGEDIT.EXE
 
 TEXT 正在载入桌面……
 LOGO
 EXEC EXPLORER.EXE!
[ 本帖最后由 Yonsm 于 2007-1-6 06:02 AM 编辑 ]
 | 
 评分
查看全部评分
 |