|
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 编辑 ] |
评分
-
查看全部评分
|