无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 5613|回复: 14
打印 上一主题 下一主题

请教PECMD.EXE的一个命令的用法。

[复制链接]
跳转到指定楼层
1#
发表于 2008-5-6 21:40:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教RUNS的用法。虽然看了帮助很久,但还是不得法。
我的意图:在进入SHELL前选择启动模式,如是正常模式,就正常加载各种菜单、工具,若是选择进入桌面全自动恢复XP到C盘,就不加载菜单、工具,但进入桌面后运行在光盘根目录下\PESOFT\TOOLS\GHOSTXP.EXE,但现在正常模式下一切下常,而自动恢复XP到C盘的模式下不能调用GHOSTXP.EXE程序。请高手帮看,谢谢!!
PEMCD.INI代码如下:
/配置文件开始(注意,文件的开始和结束必须是空行或注释。)
/行首注释可以用"/"或"`",但行后的注释必须是"`"。
`开始日志记录
_SUB Open_LOGS
     LOGS %SystemRoot%\PECMD.LOG
_END
`用户登录界面设置子过程
_SUB Start_LOGO
     FIND MEM>127,LOGO WINLOGON.JPG!PAGE D:\PAGE.SYS 64|FIND MEM>95,LOGO ,0
     TEAM FILE %SystemRoot%\*.??_|FILE *.??_|FILE %SystemRoot%\SYSTEM32\DRIVERS\*.SY_
     TEAM TEXT 初始化系统……#0xFFFFFF L468 T244 R588 B266|FBWF P20 H72|INIT
_END
`用户设置
_SUB User_Setting
     USER 月光森林,雨季太阳     
_END
`系统修正子过程
_SUB Fix_System
     `修正 USB 驱动程序文件路径
     ENVI V0=HKLM\System\CurrentControlSet\Services
     ENVI V1=System32\Drivers
     REGI %V0%\USBHUB\ImagePath=%V1%\USBHUB.SYS
     REGI %V0%\USBCCGP\ImagePath=%V1%\USBCCGP.SYS
     REGI %V0%\USBEHCI\ImagePath=%V1%\USBEHCI.SYS
     REGI %V0%\USBOHCI\ImagePath=%V1%\USBOHCI.SYS
     REGI %V0%\USBSTOR\ImagePath=%V1%\USBSTOR.SYS
     REGI %V0%\USBUHCI\ImagePath=%V1%\USBUHCI.SYS
     REGI %V0%\HIDUSB\ImagePath=%V1%\HIDUSB.SYS
     REGI %V0%\MOUCLASS\ImagePath=%V1%\MOUCLASS.SYS
     REGI %V0%\MOUHID\ImagePath=%V1%\MOUHID.SYS
     REGI %V0%\KBDCLASS\ImagePath=%V1%\KBDCLASS.SYS
     REGI %V0%\KBDHID\ImagePath=%V1%\KBDHID.SYS
     `设定系统
     ENVI V0=HKLM\Software\Microsoft\Windows\CurrentVersion
     ENVI V1=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace     
     REGI %V0%\ShellServiceObjectDelayLoad\PostBootReminder=
     REGI %V1%\{7007ACC7-3202-11D1-AAD2-00805FC1270E}\!
     REGI %V1%\{D20EA4E1-3957-11d2-A40B-0C5020524153}\!
     TEAM REGI HKCR\lnkfile\IsShortcut|ENVI V0=|ENVI V1=
     REGI HKCR\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\Manage\!
     REGI HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoNetConnectDisconnect=#0x1
_END
`创建系统菜单子过程
_SUB Created_SYS_Menu
     TEXT 创建附件菜单……
     EXEC @PECMD.EXE CALL $SHELL32.DLL,DllInstall,#1,U
     LINK %Programs%\附件\记事本,NOTEPAD.EXE
     LINK %Programs%\附件\命令提示符,CMD.EXE
     LINK %Programs%\附件\注册表编辑器,REGEDIT.EXE
     LINK %Programs%\附件\资源管理器,EXPLORER.EXE,,EXPLORER.EXE,1
     LINK %Programs%\附件\显示设置,SETDISPLAY.EXE
     LINK %QuickLaunch%\设置虚拟内存,SETPAGEFILE.EXE
     LINK %QuickLaunch%\清理临时文件,CLEANTEMP.EXE     
_END
`创建工具菜单子过程
_SUB Created_Tools_Menu
     LOAD \PESOFT\PESOFT.INI     
_END
`设置 Windows 启动项子过程
_SUB Set_Windiws_Run
     RUNS PECMD TEAM WAIT 1000|KILL SMSS|KILL WINLOGON,杀进程
     RUNS %SystemRoot%\SYSTEM32\internat.exe,输入法指示器
_END
`加载SHELL子过程
_SUB Start_Shell
     TEAM TEXT 载入桌面!|LOGO|SHEL %SystemRoot%\EXPLORER.EXE|WAIT 3000     
_END
`保存日志记录
_SUB Save_LOGS
     LOGS
_END
`单选框选中结果检测
_SUB CheckMod
  FIND $%RadioButton1.Check%=0,CALL Ghostxp!CALL Normal
_END
`执行启动项
_SUB Ghostxp
  KILL \%Windows1%
  LOAD \PESOFT\MINI.INI
_END
`执行正常启动加载
_SUB Normal
  KILL \%Windows1%
  CALL Created_SYS_Menu
  CALL Created_Tools_Menu
  CALL Set_Windiws_Run
_END
`配置选择窗口
_SUB Windows1,W305H140,选择模式,,,1
  GROU Group1,L8T10W282H75,请选择PE加载模式
  RADI RadioButton1,L25T30W250H20,正常启动WINPE维护系统(加载所有的工具),,1,1
  RADI RadioButton2,L25T50W250H20,进PE后全自动安装系统到C盘(无需人工干预),,0,1
  ITEM Button1,L234T98W56H24,确定,CALL CheckMod
  LABE Label1,L8T103W200H20,5秒内不选择默认以正常方式启动
  TIME Timer1,5000,CALL Normal
_END
`主体执行流程
/CALL Open_LOGS              `开始日志记录
DISP B32
CALL Start_LOGO             `用户登录界面设置
/CALL User_Setting           `用户设置
CALL Fix_System             `系统修正
CALL @Windows1              `配置选择
/CALL Created_SYS_Menu       `创建系统菜单
/CALL Created_Tools_Menu     `创建工具菜单     
/CALL Set_Windiws_Run        `设置Windows启动项
CALL Start_Shell            `启动 SHELL
/CALL Save_LOGS              `执行完毕,并保存日志

MINI.INI在PESOFT目录下。内容如下:
USER 月光森林,雨季太阳
RUNS PECMD.EXE EXEC %CurDrv%\PESOFT\TOOLS\GHOSTXP.EXE,一键XP。

还有PESOFT.INI 主要是加载工具菜单,正常模式下运行正常在此不帖了。

[ 本帖最后由 lrbin50 于 2008-5-7 12:15 PM 编辑 ]

PEMCD-MINI.rar

2.16 KB, 下载次数: 104, 下载积分: 无忧币 -2

2#
发表于 2008-5-6 21:49:28 | 只看该作者
原帖由 lrbin50 于 2008-5-6 09:40 PM 发表
请教RUNS的用法。虽然看了帮助很久,但还是不得法。
我的意图:在进入SHELL前选择启动模式,如是正常模式,就正常加载各种菜单、工具,若是选择进入桌面全自动恢复XP到C盘,就不加载菜单、工具,但进入桌面后运 ...


RUNS 命令格式有错。。。。。。。。
回复

使用道具 举报

3#
 楼主| 发表于 2008-5-6 21:55:08 | 只看该作者
错在哪里啊?老九?我用你的例直接改成:RUNS PECMD.EXE EXEC %CurDrv%\PESOFT\TOOLS\GHOSTXP.EXE ,一键XP。 也不行啊,就改了个路径,少了一个隐藏的! 请老九指正一下啊。
还有,那个TIMER我想在选择框人工点击事件发生就停止,但好像停不了,不知该如何写代码。有高手知道的一并指教一下,多谢了!

[ 本帖最后由 lrbin50 于 2008-5-6 10:01 PM 编辑 ]
回复

使用道具 举报

4#
发表于 2008-5-6 22:01:44 | 只看该作者
原帖由 lrbin50 于 2008-5-6 09:55 PM 发表
错在哪里啊?老九?我用你的例直接改成:RUNS PECMD.EXE EXEC %CurDrv%\PESOFT\TOOLS\GHOSTXP.EXE ,一键XP。 也不行啊,就改了个路径,少了一个隐藏的! 请老九指正一下啊。


这个格式就对了,RUNS命令要放在SHEL命令之前执行(时间上的之前,不是文件行位置之前)。
RUNS命令写入的内容是由桌面启动的,即由explorer.exe启动,不是由PECMD启动的,
如果explorer.exe启动了,再执行RUNS命令是无效的。如果explorer.exe不启动,RUNS命令写入的内容也无效。

另,你检查一下启动后,注册表的启动项有没有写入对应的内容。

[ 本帖最后由 lxl1638 于 2008-5-6 10:02 PM 编辑 ]
回复

使用道具 举报

5#
发表于 2008-5-6 22:06:07 | 只看该作者
看不懂老九的解释啦,
RUNS命令写入的内容是由桌面启动的,即由explorer.exe启动,不是由PECMD启动的,
如果explorer.exe启动了,再执行RUNS命令是无效的。如果explorer.exe不启动,RUNS命令写入的内容也无效。
这个不是互相矛盾吗?
回复

使用道具 举报

6#
 楼主| 发表于 2008-5-6 22:07:16 | 只看该作者
原帖由 lxl1638 于 2008-5-6 10:01 PM 发表


这个格式就对了,RUNS命令要放在SHEL命令之前执行(时间上的之前,不是文件行位置之前)。
RUNS命令写入的内容是由桌面启动的,即由explorer.exe启动,不是由PECMD启动的,
如果explorer.exe启动了,再执行 ...

可是事实证明是不行的啊。我检查了,在注册表RUN中没有写入这东东。执行上,按代码,也是先于SHELL命令前执行的RUNS啊。不得其解。
回复

使用道具 举报

7#
发表于 2008-5-6 22:10:08 | 只看该作者
原帖由 阿非 于 2008-5-6 10:06 PM 发表
看不懂老九的解释啦,
RUNS命令写入的内容是由桌面启动的,即由explorer.exe启动,不是由PECMD启动的,
如果explorer.exe启动了,再执行RUNS命令是无效的。如果explorer.exe不启动,RUNS命令写入的内容也无效 ...

不矛盾。
如果explorer.exe启动了,再执行RUNS命令时,内容会写入注册表,但不会被执行,因为启动项是explorer.exe启动时执行的;

如果explorer.exe不启动,RUNS命令写入的内容也无效=RUNS会写放注册表,但explorer.exe不启动,启动项不会被执行,所以无效。
回复

使用道具 举报

8#
发表于 2008-5-6 22:12:32 | 只看该作者

CALL Start_Shell            `启动 SHELL,这里已执行SHEL命令
/CALL Save_LOGS              `执行完毕,并保存日志

MINI.INI在PESOFT目录下。内容如下:
USER 月光森林,雨季太阳
RUNS PECMD.EXE EXEC %CurDrv%\PESOFT\TOOLS\GHOSTXP.EXE `一键XP。这里才到RUNS命令



你上面的脚本,SHEL命令比RUNS命令先执行!。
USER命令也不能在SHEL之后。

[ 本帖最后由 lxl1638 于 2008-5-6 10:14 PM 编辑 ]
回复

使用道具 举报

9#
 楼主| 发表于 2008-5-6 22:17:50 | 只看该作者
原帖由 lxl1638 于 2008-5-6 10:12 PM 发表

CALL Start_Shell            `启动 SHELL,这里已执行SHEL命令
/CALL Save_LOGS              `执行完毕,并保存日志

MINI.INI在PESOFT目录下。内容如下:
USER 月光森林,雨季太阳
RUNS PECMD.EXE EXE ...

啊?!没看得出,顺序是先有CALL @windows1,选择,选择完后判断选择结果,调用MINI.INI(其中有RUNS)最后才是CALL Start_Shell即加载SHEL啊,怎么成了SHEL在先呢?能帮分析一下么?
回复

使用道具 举报

10#
发表于 2008-5-6 22:25:16 | 只看该作者
原帖由 lrbin50 于 2008-5-6 10:17 PM 发表

啊?!没看得出,顺序是先有CALL @windows1,选择,选择完后判断选择结果,调用MINI.INI(其中有RUNS)最后才是CALL Start_Shell即加载SHEL啊,怎么成了SHEL在先呢?能帮分析一下么?


1 看看MINI.INI有没有被载入?
2   看看MINI.INI中的RUNS格式有没有正确或都是否执行到?
回复

使用道具 举报

11#
 楼主| 发表于 2008-5-6 22:38:34 | 只看该作者
那个USER命令是起了效的。按理MINI是加载进去了的。RUNS是我按你的命令改的。按理也不会有什么错啊。
回复

使用道具 举报

12#
 楼主| 发表于 2008-5-6 23:10:28 | 只看该作者
老九,等你的答复了啊。。
回复

使用道具 举报

13#
发表于 2008-5-7 21:30:37 | 只看该作者
PECMD的INI文件有个要求:
文件的开头一行和最后一行必须是空行或注释,你的INI文件除了PECMD.INI符合这个要求外,另两个文件都没有符合这个要求。
回复

使用道具 举报

14#
 楼主| 发表于 2008-5-7 22:02:03 | 只看该作者
哦,这样,我看看。。晕死。。试过再回话,但为什么前面的USER又执行了??

[ 本帖最后由 lrbin50 于 2008-5-7 10:04 PM 编辑 ]
回复

使用道具 举报

15#
 楼主| 发表于 2008-5-7 22:11:28 | 只看该作者
谢谢老九,搞定,是你说的这个问题!
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-3-1 01:37

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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