无忧启动论坛

标题: 在WIM解压出来的 [打印本页]

作者: a2689075    时间: 2010-6-30 15:20
标题: 在WIM解压出来的
大家麻烦帮下。。我想修改启动时候的桌面 图片。我在WIM 解按出来的 外置程序 在桌面背景 复制进去我需要的图片。然后我在
FIND MEM>120,TEAM LOGO %OPDir%\桌面背景\PEWALLPAPER.jpg|WAIT 1000
TEXT 正在执行基本设置…… #0xEE,L20 T690 R400 B768 $20
FIND Explorer.EXE,CALL Outer_Reload `由最小模式启动后加载外置时,需要调用 Outer_Reload 中定义的一些命令
WALL %OPDir%\桌面背景\PELOGO.jpg
还是原来 下载时候的图片。不是我自己修改的图片。
需要怎么修改呢。麻烦告诉一下菜鸟
作者: a2689075    时间: 2010-6-30 15:40
标题: 谁可以帮忙一下。怎么修改桌面图片
谁可以帮忙一下。怎么修改桌面图片
作者: 94first    时间: 2010-6-30 17:34
最简单的办法找到原来的图片替换就OK了
作者: dalin_01    时间: 2010-6-30 17:51
//==================== 子程序区  ====================//
`挂载内置程序
_SUB INIT_OP
TEXT 装载内置工具……
ENVI MOUNTO=Y:\OP
PATH %MOUNTO%
MOUN %WIMF%,%MOUNTO%,1,%TEMP%
PATH @%MOUNTO%
TEAM FORX %MOUNTO%\*.CMD,TOOLSCMD,0,EXEC =!%TOOLSCMD%|ENVI TOOLSCMD=
TEAM FORX %MOUNTO%\*.INI,TOOLSINI,0,LOAD %TOOLSINI%|ENVI TOOLSINI=
_END
_SUB LINK_OP
LINK %Desktop%\加载外部配置,PECMD.EXE,LOAD %WS%\LOADOP.INI,Shell32.dll#5
EXEC =!CMD /C "ECHO ENVI WIMF=%WIMF% >>%WS%\LOADOP.INI"
EXEC !CMD /C "ECHO CALL INIT_OP >>%WS%\LOADOP.INI"
_END
` 系统修正子过程(如果shell32.dll中未加载请执行)
_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
REGI %V0%\CDROM\ImagePath=%V1%\CDROM.SYS

` 设定系统
ENVI V0=Software\Microsoft\Windows\CurrentVersion
REGI HKLM\%V0%\ShellServiceObjectDelayLoad\PostBootReminder=
REGI HKLM\%V0%\Explorer\FindExtensions\Static\WebSearch\!  `清除搜索菜单上的搜索"在 Internet 上"
REGI HKLM\%V0%\Explorer\ControlPanel\NameSpace\{D6277990-4C6A-11CF-8D87-00AA0060F5BF}\!   `不显示任务计划
REGI HKLM\%V0%\Explorer\ControlPanel\NameSpace\{7007ACC7-3202-11D1-AAD2-00805FC1270E}\!  `不显示网络连接
REGI HKLM\%V0%\Explorer\ControlPanel\NameSpace\{D20EA4E1-3957-11d2-A40B-0C5020524153}\!  `不显示字体
REGI HKCU\%V0%\Explorer\HideDesktopIcons\ClassicStartMenu\{450D8FBA-AD25-11D0-98A8-0800361B1103}=#1  `在桌面不显示我的文档
REGI HKCU\%V0%\Policies\Explorer\NoNetConnectDisconnect=#0x1
REGI HKCU\%V0%\Policies\System\NoInternetOpenWith=#0x1
REGI HKCR\lnkfile\IsShortcut  `不出快捷方式箭头
REGI HKCR\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\Manage\!
TEAM ENVI V0|ENVI V1
_END
`注册IMDISK右键
_SUB RegImdRk
REGI HKCR\Drive\shell\ImDiskSaveImage\=保存ImDisk虚拟磁盘
REGI HKCR\Drive\shell\ImDiskSaveImage\command\=rundll32.exe imdisk.cpl,RunDLL_SaveImageFile %L
REGI HKCR\Drive\shell\ImDiskUnmount\=卸载ImDisk虚拟磁盘
REGI HKCR\Drive\shell\ImDiskUnmount\command\=rundll32.exe imdisk.cpl,RunDLL_RemoveDevice %L
REGI HKLM\SOFTWARE\Classes\Ultraiso\shell\ImDiskMountFile\=加载为ImDisk虚拟磁盘
REGI HKLM\SOFTWARE\Classes\Ultraiso\shell\ImDiskMountFile\command\=rundll32.exe imdisk.cpl,RunDLL_MountFile %L
REGI HKLM\SOFTWARE\Classes\Winimage\shell\ImDiskMountFile\=加载为ImDisk虚拟磁盘
REGI HKLM\SOFTWARE\Classes\Winimage\shell\ImDiskMountFile\command\=rundll32.exe imdisk.cpl,RunDLL_MountFile %L
_END
_SUB IFSetPageFile `询问是否设置虚拟内存
TEXT 是否设置虚拟内存?
MESS 您的计算机物理内存较少,某些外置程序的运行可能需要用到\n虚拟内存。设置了虚拟内存,有助于提高系统的速度和稳定性;\n如果您需要保护并恢复硬盘分区数据,可跳过虚拟内存的设置。\n \n您确定要设置虚拟内存吗?(建议设置,20 秒后默认选择否)@设置虚拟内存 #YN *20000 $NO
FIND $%YESNO%=YES,Call SetPageDrv!TEXT 没有建立虚拟内存……
WAIT 500
_END
_SUB SetPageDrv  `设定虚拟内存存放分区
TEXT 正在设定虚拟内存……
ENVI PF=Pagefile.sys
BROW PageDrv,*,请选择虚拟内存文件存放的分区,取消则自动选择D:分区
FIND $%PageDrv%=,ENVI PageDrv=D:\
TEXT 正在设定虚拟内存到%PageDrv%盘……
TEAM PAGE %PageDrv%%PF% 256|WAIT 500
EXEC =!CMD.EXE /C "IF EXIST %PageDrv%%PF% ECHO PageFile in %PageDrv%>%Temp%\PFIsSet.LOG"
TEAM ENVI PageDrv=|ENVI PF=
_END
`获取内核路径和类型
_SUB GetImgPath
`输出两个变量:IsImg--内核是IMG文件、ImgPath--内核路径
REGI $HKLM\System\CurrentControlSet\Control\SystemStartOptions,tp
LPOS left=%tp%,=
IFEX $%left%=0,TEAM ENVI tp|ENVI left|EXIT
CALC #left=%left%+1
RPOS right=%tp%,\
`计算映像扩展名
CALC #imgleft=%right%+1
MSTR imgname=%tp%,%imgleft%,0
LPOS imgleft=%imgname%,.
CALC #imgleft=%imgleft%+1
MSTR imgname=%imgname%,%imgleft%,2
FIND $%imgname%=im,ENVI IsImg=1
`计算映像路径
CALC #length=%right%-%left%
MSTR tp=%tp%,%left%,%length%
MSTR first=%tp%,1
FIND $%first%=\,!ENVI tp=\%tp%
ENVI ImgPath=%tp%
TEAM ENVI left|ENVI right|ENVI length|ENVI first|ENVI tp|ENVI imgleft|ENVI imgname
_END
`XPPE中修改注册表和相关文件名以支持 Vista 安装
_SUB INSVISTA
REGI HKLM\SYSTEM\CurrentControlSet\Control\MiniNT\!
EXEC !CMD.EXE /C "REN %WinDir%\SYSTEM32\HALACPI.DLL HAL.DLL"
_END
`设置FBWF
_SUB FBWF_SET
FIND MEM<384,FBWF P40 L96 H192!FBWF P40 L160 H256
_END
//==================== 主程序区  ====================//
ENVI WinDir=X:\WXPE
TEAM LOGO %WinDir%\桌面背景\PELOGO.JPG|TEXT 正在初始化电脑维护系统……#0xEE $20|WAIT 100

CALL GetImgPath
NUMK 0                 `对于笔记本键盘,以关闭数字键
FIND $%IsImg%=1,!CALL FBWF_SET `非IMG内核开FBWF
ENVI $LOADMODE=2 `预置装载模式值
ENVI $BootFromCD=-1 `预置是否从光盘启动值
ENVI $BootOS=03  `预置是否为03系统
TEAM ENVI W=%WinDir%|ENVI WS=%W%\SYSTEM32|ENVI WSD=%WS%\Drivers
`IMG映象方式可删除不再使用的文件
FIND $%IsImg%=1,TEAM FILE %W%\TXTSETUP.SI*|FILE %WS%\NTOSKRNL.EX*|FILE %WS%\WIN32K.SYS|PATH #%WS%\CONFIG|FILE %WS%\*.*_|FILE %WSD%\*.SY_
TEAM PATH %SystemDrive%\TEMP|INIT IU,3000|EXEC @PECMD.EXE CALL $SHELL32.DLL,DllInstall,#1,U
EXEC =!%WS%\showdrive.exe
`系统修正
`FIND $%BootOS%=03,CALL Fix_System
`理顺磁盘盘符(理顺后删除相关文件)
EXEC =!%WinDir%\SYSTEM32\ORDERDRV.CMD  
FIND $%IsImg%=1,TEAM FILE %WS%\ORDERDRV.CMD|FILE %WS%\MBRFIX.EXE|FILE %WS%\MOUNTVOL.EXE
TEAM TEXT 5秒内按住Ctrl键将不装载外置进最小模式...... #0xEE $20|WAIT -5000
FIND KEY=#17,TEAM ENVI MINIMODE=1|TEXT 正在进最小模式...... #0xEE $20
`注册热键
HOTK #112,PECMD.EXE `热键:F1
`注册WimShExt.DLL
CALL $%WS%\WimShExt.DLL  
REGI HKCU\Software\WimTool\AutoMountPath=Y:\WIM
`注册IMDISK右键
CALL RegImdRk
`如果Y盘没有由注册表建立则使用ImDisk建立
IFEX Y:\,!RAMD ImDisk,L4,NTFS,Y:,RAMDisk
`物理内存低于 256MB 时询问是否设定虚拟内存,设PFIsSet.LOG文件的作用是后续程序可以检测此文件以判断是否设置了虚拟内存,以便程序无阻塞运行;还可以在再次装载时不用再设置
IFEX %Temp%\PFIsSet.LOG,!FIND MEM<256,CALL IFSetPageFile

`建立基本的快捷方式
LINK %Programs%\附件\记事本,%WS%\NOTEPAD.EXE
LINK %Programs%\附件\命令提示符,%WS%\CMD.EXE
LINK %Programs%\附件\注册表编辑器,%W%\REGEDIT.EXE
LINK %Programs%\附件\资源管理器,%W%\EXPLORER.EXE,,EXPLORER.EXE,1
LINK %QuickLaunch%\资源管理器,%W%\EXPLORER.EXE,::{20D04FE0-3AEA-1069-A2D8-08002B30309D}
LINK %Programs%\桌面刷新,PECMD.EXE,KILL EXPLORER.EXE,Shell32.dll#27
LINK %Programs%\分配可移动盘盘符,%WS%\SHOWDRIVE.EXE,,SHELL32.DLL#8
LINK %Programs%\注册WimShExt 外壳,PECMD.EXE,LOAD %WS%\WimShExt.ini,Shell32.dll#24
LINK %QuickLaunch%\设置临时文件,PECMD.EXE,LOAD %WS%\PESET.INI,SHELL32.DLL#12
LINK %Programs%\装载PETOOLS中的程序,PECMD.EXE,LOAD %WS%\PETOOLS.INI,Shell32.dll#45
`RUNS %WS%\internat.exe,输入法指示器
LINK %Startup%\输入法指示器,%WS%\internat.exe
FIND Explorer.EXE,!TEAM SHEL %WinDir%\EXPLORER.EXE|LOGO|TEXT
EXEC @ATTRIB +H "%USERPROFILE%\「开始」菜单\PECMD说明.LNK"
EXEC !PESET.EXE
`XPPE中修改注册表和相关文件名以支持 Vista 安装
FIND $%BootOS%=03,!CALL INSVISTA
WALL %WinDir%\桌面背景\PEWALLPAPER.JPG
`如果不能给 USB 移动存储设备迅速分配盘符或者关机缓慢,请尝试重启 AudioSrv 服务(对于部分 HD 声卡)
TEAM EXEC =PECMD SERV !AudioSrv|EXEC =PECMD SERV AudioSrv
`杀掉无用进程
TEAM KILL SMSS.EXE|KILL WINLOGON.EXE
`IMG映象方式可删掉 X: 盘可删除文件并开FBWF
FIND $%IsImg%=1,TEAM FILE %WS%\SMSS.EXE|FILE %WS%\WINLOGON.EXE|CALL FBWF_SET
`装载外部配置
IFEX %WinDir%\OP.WIM,ENVI WIMF=%WinDir%\OP.WIM!ENVI WIMF=%ImgPath%\OP.WIM
FIND $%MINIMODE%=1,CALL LINK_OP!CALL INIT_OP
TEAM TEXT 开始搜索本地盘的“PETools”……#0xEE $20|WAIT 500|LOAD %WS%\PETOOLS.INI
TEAM ENVI W=|ENVI WS=|ENVI WSD=|ENVI $BootFromCD=
TEXT


我在H大的H3CD-WIM-03PE版的PE里是这样添加的.希望能帮到你.

[ 本帖最后由 dalin_01 于 2010-6-30 17:57 编辑 ]
作者: listee    时间: 2010-7-1 14:15
图片要换成bmp格式
作者: 2010zxlaclp    时间: 2010-7-1 18:38
四楼谢谢了

清楚明白··
作者: myhong    时间: 2010-7-2 21:21
请问:假如说不想显示壁纸是否删除红色部份语句就行了?
作者: dalin_01    时间: 2010-7-3 18:10
标题: 回复 #7 myhong 的帖子
不想显示壁纸只保留红色部份为
TEAM TEXT 正在初始化电脑维护系统……#0xEE $20|WAIT 100
就可以了吧.你可以测试下.
作者: myhong    时间: 2010-7-3 19:51
感谢楼上的指点,抽时间马上试试.




欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3