无忧启动论坛

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

发布一条PE快速启用网络的技巧,由不得你不信,极限冲刺前3秒!2010年12月8日冒泡更新

[复制链接]
跳转到指定楼层
1#
发表于 2009-7-14 15:18:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
2010年12月14日
公布了一个参考PE供各位参考:
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=183329&page=1&extra=page%3D1


更新内容及部分说明:
1,将以前的NETX.CMD和NETX.INI完美的合二为一了,大家可以将这个技巧用在其他地方,这样PECMD的INI能够方便地实现自我加载,还减少了一个文件,呵呵,觉得听方便的。要注意的地方就是CMD的EXIT命令不能另起一行,要跟在前面的命令后面。而且要保证CMD命令的最后一定要成功退出,不然会报错,不过对结果没什么影响。
2,加入了pseudo  的在通知区域显示图标的功能。
其中
FOR /F %%i IN ('@reg query "HKLM\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}" /s^|find /i "Connection"') DO >nul REG ADD %%i /v ShowIcon /t REG_DWORD /d 1 /f
出自psendo的原创
IPCONFIG >nul是在H3的PE里发现的技巧,大大加快了找到SHOWICON键值的速度,但是如果网络加载快的话,还是有注册不到SHOWICON的现象,于是本人进行了改进如下:
:ShowIcon
IPCONFIG >nul &&PECMD WAIT 500
FOR /F %%i IN ('@reg query "HKLM\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}" /s^|find /i "Connection"') DO >nul REG ADD %%i /v ShowIcon /t REG_DWORD /d 1 /f &&GOTO NEXT
MD %TEMP%\1 &&GOTO ShowIcon &MD %TEMP%\2 &&GOTO ShowIcon &MD %TEMP%\3 &&GOTO ShowIcon &MD %TEMP%\4 &&GOTO ShowIcon &MD %TEMP%\5 &&GOTO ShowIcon &GOTO END
目的是达到了,不过本人是DOS菜鸟,应该会有精简些的写法,希望pseudo等DOS批处理高手帮忙改进一下,谢谢!
3,去掉了一些重复启动的服务,因为在网络安装时那些服务已经自动启动了,没必要多此一举。
4,关于IE部分DLL的注册,要参照自己的核心来定,我现在的核心都不用注册了,写在这里的是因为觉得这几个比较重要,作个备忘。
5,这里去除了一些小动作,主要是核心优化了,速度比以前更快了,包括加载显卡,声卡,以及注册DLL的速度,都能提高一倍以上的速度
6,核心主要作的更改是:
a,启动CryptSrv
b,注册 initpki.dll
c,将声卡的两个服务改成手动
d,将其它启动时不可能启动的服务改成手动或禁止
等,其它的记不起来了:)

**关于showicon段再作点解释
在我的测试过程中,不加延时的话,在虚拟机中和实机CPU主频在1g左右的机型,一般可以直接注册到SHOWICON键值,但是在我的实机测试中,基本上2秒钟不到所有的网络命令都已经执行完毕了,大概还必须等待1秒钟左右的时间才能才能注册到SHOWICON键值,所以只能够被动等待,如果简单在前面加个延时2秒,对机型慢的又是无谓的浪费时间,因为机型慢的根本不需要等待时间

我的这段命令的运行的过程是:首先延时0.5秒,然后注册SHOWICON,不成功,再次延时0.5秒,再次注册SHOWICON, ……如此反复,如果5次都没注册上,那基本肯定是网卡没装上。为了避免死循环,第5次过后它就会自动退出这个循环状态。而其中任何一次注册成功的话,都会自动跳出这个循环,这样就照顾了慢的,也兼顾了快的

我测试的结果是,一般启用网络(其中包括自动获取IP地址的时间)需要4,5秒钟及以上的机型,确实不需要任何等待时间的



**12月9日更新部分注释:

1,MOVE "%Desktop%\Internet Explorer.LNK" "%QuickLaunch%"
;是属于技巧性的处理动作,没什么特别含义,是为了后面的“LINK %QuickLaunch%\Internet Explorer,%SystemRoot%\IE6\IEXPLORE.EXE”在快速启动栏显示IE快捷方式,不用KILL EXPLORER就能及时可用.


2,Rundll32 SetupAPI,InstallHinfSection Install 128 %SystemRoot%\INF\NETICON.INI
;也是技巧性的处理动作,是为了不用刷新桌面,就能及时显示网上邻居的图标,命名为INI文件,是怕别的程序调用它,里面只有简单的几句话:
[version]
Signature="$Windows NT$"
[Install]
AddReg=Add.Reg
[Add.Reg]
HKCU,"Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\ClassicStartMenu","{208D2C60-3AEA-1069-A2D7-08002B30309D}",0x00010001,0


3,LINK %Desktop%\宽带断开,RASDIAL.EXE,我的连接 /D,NETSHELL.DLL#17
;小细节,完全可以这么用,好像没什么人注意到这个细节,变成另外增加了一个批处理

4,..\7z.exe x NET\NET_PART.7z -y -aos -o"%SystemRoot%" >nul
; >nul 在这里非常有用,特别是解压数量比较多的小文件时,能大大缩短解压时间






@ECHO OFF
PUSHD %~dp0
IF /I "%1"=="" PECMD LOAD NETX.CMD
IF /I "%1"=="IE6" MD %TEMP%\IE6 &MOVE "%Desktop%\Internet Explorer.LNK" "%QuickLaunch%" &PECMD LOAD NETX.CMD
IF /I "%1"=="WLAN" MD %TEMP%\WLAN &PECMD LOAD NETX.CMD
IF /I "%1"=="PPPOE" MD %TEMP%\PPPOE &PECMD LOAD NETX.CMD

:ShowIcon
IPCONFIG >nul &&PECMD WAIT 500
FOR /F %%i IN ('@reg query "HKLM\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}" /s^|find /i "Connection"') DO >nul REG ADD %%i /v ShowIcon /t REG_DWORD /d 1 /f &&GOTO NEXT
MD %TEMP%\1 &&GOTO ShowIcon &MD %TEMP%\2 &&GOTO ShowIcon &MD %TEMP%\3 &&GOTO ShowIcon &MD %TEMP%\4 &&GOTO ShowIcon &MD %TEMP%\5 &&GOTO ShowIcon &GOTO END
:NEXT
MD %SystemRoot%\LANOK &NET USER Guest /active:yes >nul &NET USER Guest /passwordreq:no >nul &Rundll32 SetupAPI,InstallHinfSection Install 128 %SystemRoot%\INF\NETICON.INI
:END
DEL /Q %SystemRoot%\INF\*.PNF %SystemRoot%\INF\INFCACHE.1 &PECMD FILE %TEMP%\* &EXIT


``
_SUB LAN
TEXT 正在启用网络支持,请稍候 …… L80 T50
EXEC =!7z.exe x NET_PART.7z -y -aos -o"%SystemRoot%"
IFEX %TEMP%\WLAN,DEVI DRV_WLAN.CAB!DEVI DRV_LAN.CAB
`EXEC InfCacheBuild.exe %SystemRoot%
UPNP -pnp -cn WINPE -wg WORKGROUP
UPNP -c p -i MS_TCPIP
UPNP -c c -i MS_MSCLIENT
UPNP -c s -i MS_SERVER
SERV Dhcp
SERV Lanmanserver
`SERV LmHosts
IFEX %TEMP%\WLAN,CALL WLAN
KILL EXPLORER.EXE
_END

_SUB WLAN
SERV EventLog
UPNP -v -c p -i MS_NDISUIO
UPNP -v -c s -i MS_WZCSVC
SERV WZCSVC
_END

_SUB IE6
EXEC =!7z.exe x IE6.7z -y -aos -o"%SystemRoot%"
LINK %QuickLaunch%\Internet Explorer,%SystemRoot%\IE6\IEXPLORE.EXE
FONT %SystemRoot%\FONTS
EXEC REGSVR32 /S /N /I INETCPL.CPL
TEAM CALL $MSHTML.DLL|CALL $MSHTMLED.DLL|CALL $INETCOMM.DLL|CALL $HHCTRL.OCX        `|CALL $Flash.ocx
EXEC =Rundll32 SetupAPI.dll,InstallHinfSection DefaultInstall 132 %SystemRoot%\IE6\IE.INF
EXEC IEXPLORE.EXE
_END

_SUB PPPOE
EXEC =!7z.exe x NET_PPPOE.7z -y -aos -o"%SystemRoot%"
UPNP -c p -i MS_L2TP
UPNP -c p -i MS_PPTP
UPNP -c p -i MS_PPPOE
EXEC %SystemRoot%\SYSTEM32\RASPHONE.PBK
UPNP -c p -i MS_WANARP
UPNP -c p -i MS_NDISWAN
UPNP -c s -i MS_RASCLI
UPNP -c s -i MS_RASSRV
UPNP -c s -i MS_RASMAN
UPNP -c s -i MS_STEELHEAD
SERV TAPISRV
SERV RASMAN
LINK %Desktop%\宽带断开,RASDIAL.EXE,我的连接 /D,NETSHELL.DLL#17
LINK %Desktop%\宽带连接,RASPHONE.PBK
_END
``
//NET安装程序开始
IFEX %SystemRoot%\LANOK,IFEX %TEMP%\WLAN,CALL LAN!CALL LAN
IFEX %TEMP%\PPPOE,CALL PPPOE
IFEX %TEMP%\IE6,CALL IE6
//NET安装程序结束

囧,发现问题了,主要是这个命令好久没用,可能后来把它改错了,现在改正了
怕COPY有错,还是加个附件吧 NETX.7z (1.22 KB, 下载次数: 174)


*********************************************************************
还是再发个自用的全CMD快速启用网络的命令吧,系统中要增加一个SC.EXE的小文件,这个是官方的,正常系统中有

@ECHO OFF
PUSHD %~dp0
IF /I "%1"=="IE6" MOVE "%Desktop%\Internet Explorer.LNK" "%QuickLaunch%" &If Exist %SystemRoot%\LANOK GOTO IE6
IF /I "%1"=="PPPOE" If Exist %SystemRoot%\LANOK GOTO PPPOE

PECMD TEXT 正在启用网络支持,请稍候 …… L80 T50
..\7z.exe x NET\NET_PART.7z -y -aos -o"%SystemRoot%" >nul
IF /I "%1"=="WLAN" (PECMD DEVI NET\DRV_WLAN.CAB) ELSE PECMD DEVI NET\DRV_LAN.CAB
PECMD UPNP -pnp -cn WINPE -wg WORKGROUP
PECMD UPNP -c p -i MS_TCPIP
PECMD UPNP -c c -i MS_MSCLIENT
PECMD UPNP -c s -i MS_SERVER
SC START Dhcp >nul
SC START Lanmanserver >nul
rem SC START LmHosts >nul
IF /I "%1"=="WLAN" SC START EventLog >nul &PECMD UPNP -v -c p -i MS_NDISUIO &&PECMD UPNP -v -c s -i MS_WZCSVC &&SC START WZCSVC >nul
PECMD KILL EXPLORER.EXE

:ShowIcon
IPCONFIG >nul &&PECMD WAIT 500
FOR /F %%i IN ('@reg query "HKLM\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}" /s^|find /i "Connection"') DO >nul REG ADD %%i /v ShowIcon /t REG_DWORD /d 1 /f &&GOTO NEXT
MD %TEMP%\1 &&GOTO ShowIcon &MD %TEMP%\2 &&GOTO ShowIcon &MD %TEMP%\3 &&GOTO ShowIcon &MD %TEMP%\4 &&GOTO ShowIcon &MD %TEMP%\5 &&GOTO ShowIcon &GOTO END
:NEXT
MD %SystemRoot%\LANOK &NET USER Guest /active:yes >nul &NET USER Guest /passwordreq:no >nul &(IF /I "%1"=="IE6" GOTO IE6) &(IF /I "%1"=="PPPOE" GOTO PPPOE)
Rundll32 SetupAPI,InstallHinfSection Install 128 %SystemRoot%\INF\NETICON.INI &GOTO END

:IE6
..\7z.exe x NET\IE6.7z -y -aos -o"%SystemRoot%" >nul
PECMD FONT %SystemRoot%\FONTS
PECMD LINK %QuickLaunch%\Internet Explorer,%SystemRoot%\IE6\IEXPLORE.EXE
REGSVR32 /S /N /I INETCPL.CPL
FOR %%i IN (MSHTML.DLL MSHTMLED.DLL INETCOMM.DLL HHCTRL.OCX) DO REGSVR32 /S %%i
Rundll32 SetupAPI.dll,InstallHinfSection DefaultInstall 132 %SystemRoot%\IE6\IE.INF
START IExplore.EXE &GOTO END

:PPPOE
..\7z.exe x NET\NET_PPPOE.7z -y -aos -o"%SystemRoot%" >nul
PECMD UPNP -c p -i MS_L2TP
PECMD UPNP -c p -i MS_PPTP
PECMD UPNP -c p -i MS_PPPOE
START %SystemRoot%\SYSTEM32\RASPHONE.PBK
PECMD UPNP -c p -i MS_WANARP
PECMD UPNP -c p -i MS_NDISWAN
PECMD UPNP -c s -i MS_RASCLI
PECMD UPNP -c s -i MS_RASSRV
PECMD UPNP -c s -i MS_RASMAN
PECMD UPNP -c s -i MS_STEELHEAD
SC START TAPISRV >nul
SC START RASMAN >nul
PECMD LINK %Desktop%\宽带断开,RASDIAL.EXE,我的连接 /D,NETSHELL.DLL#17
PECMD LINK %Desktop%\宽带连接,RASPHONE.PBK

:END
DEL /Q %SystemRoot%\INF\*.PNF %SystemRoot%\INF\INFCACHE.1
PECMD FILE %TEMP%\* &EXIT

全批处理,跟上面的加载方式速度基本没差别,但是要参照我的写法才行
启用网络.7z (1.16 KB, 下载次数: 241)

[ 本帖最后由 yh_tl 于 2010-12-14 20:22 编辑 ]

评分

参与人数 1无忧币 +6 收起 理由
wangpeng + 6 精品文章

查看全部评分

2#
发表于 2009-7-14 15:23:29 | 只看该作者
`EXEC !NET START EVENTLOG
EXEC !NET START TCPIP
EXEC !NET START DHCP
EXEC !NET START NLA
`EXEC !NET START LMHOSTS
EXEC !NET START SERVER

把exec !net start 都换成SERV看着更舒服。
不过这么点,够吗?PPPOE就完了。
别的看着还不错,比如net user的那些想法很好。

你的问题是什么?
回复

使用道具 举报

3#
 楼主| 发表于 2009-7-14 15:45:05 | 只看该作者
PPPOE在上面NET.INI中有一句"LINK !%Desktop%\宽带连接,%SystemRoot%\PE_CMD.CMD,PPPOE,RASDLG.dll#19
"
调用的命令如下:(可以即点即用)
:PPPOE
START RASPHONE.PBK
PECMD.EXE UPNP -c p -i MS_L2TP
PECMD.EXE UPNP -c p -i MS_PPTP
PECMD.EXE UPNP -c p -i MS_PPPOE
PECMD.EXE UPNP -c p -i MS_WANARP
PECMD.EXE UPNP -c p -i MS_NDISWAN
PECMD.EXE UPNP -c s -i MS_RASCLI
PECMD.EXE UPNP -c s -i MS_RASSRV
PECMD.EXE UPNP -c s -i MS_RASMAN
PECMD.EXE UPNP -c s -i MS_STEELHEAD
PECMD.EXE EXEC @NET START TAPISRV
PECMD.EXE EXEC @NET START RASMAN
PECMD.EXE EXEC @NET START NETMAN

PECMD.EXE LINK %Desktop%\宽带连接,%SystemRoot%\SYSTEM32\RASPHONE.PBK
EXIT

[ 本帖最后由 yh_tl 于 2009-7-14 15:49 编辑 ]
回复

使用道具 举报

4#
 楼主| 发表于 2009-7-14 15:47:58 | 只看该作者
无线网络的
:WLAN
PECMD.EXE DEVI DRIVERS_NET_WIRELESS.CAB
InfCacheBuild.exe %SystemRoot%
rem PECMD.EXE UPNP -pnp
PECMD.EXE UPNP -v -c p -i MS_NDISUIO
PECMD.EXE UPNP -v -c s -i MS_WZCSVC
PECMD.EXE EXEC NET START WZCSVC
If Exist "%StartMenu%\启用无线网络.LNK" DEL "%StartMenu%\启用无线网络.LNK"
DEL /Q %SystemRoot%\INF\*.PNF %SystemRoot%\INF\INFCACHE.1
EXIT
回复

使用道具 举报

5#
发表于 2009-7-14 15:52:00 | 只看该作者
对启动网络还深有研究啊。
能否用类似的方法及到 PE2.x 或 PE3.x 中?
回复

使用道具 举报

6#
发表于 2009-7-14 15:55:37 | 只看该作者
还是模块化的呢,LZ研究研究,要是能拆开就好了,选择性的装进PE,基础弄个包,PPPOE和WLAN分别再弄一个,多好。
回复

使用道具 举报

7#
 楼主| 发表于 2009-7-14 16:15:17 | 只看该作者
原帖由 lxl1638 于 2009-7-14 15:52 发表
对启动网络还深有研究啊。
能否用类似的方法及到 PE2.x 或 PE3.x 中?

报告老大,我想应该可以的,因为我网络方面没在其他的地方做什么处理,只是改变了执行命令的方式
回复

使用道具 举报

8#
发表于 2009-7-14 16:45:56 | 只看该作者
为什么用PECMD比DOS命令快呢?按理PECMD也是调用DOS的啊。
回复

使用道具 举报

9#
发表于 2009-7-14 16:54:19 | 只看该作者
原帖由 lrbin50 于 2009-7-14 16:45 发表
为什么用PECMD比DOS命令快呢?按理PECMD也是调用DOS的啊。

批处理效率 低得很
而且这里有一个大家都没意识到的东西
开启服务是多线程的
回复

使用道具 举报

10#
发表于 2009-7-14 17:13:34 | 只看该作者
V10.1启动网络支持要18秒??还以为偶的启动时间最短呢。
回复

使用道具 举报

11#
发表于 2009-7-14 17:21:28 | 只看该作者
任你多好的"优化".

开启服务的时间.是最长的.有办法解决这问题.就好办.请LZ努力下.
回复

使用道具 举报

12#
 楼主| 发表于 2009-7-14 17:29:57 | 只看该作者
原帖由 mapeimapei 于 2009-7-14 17:13 发表
V10.1启动网络支持要18秒??还以为偶的启动时间最短呢。

嘿嘿,在我现在的测试机上确实是18秒,要知道启动时间与机器配置是有关,换好的机器肯定大家都能更快
回复

使用道具 举报

13#
发表于 2009-7-14 17:37:14 | 只看该作者
原帖由 lrbin50 于 2009-7-14 16:45 发表
为什么用PECMD比DOS命令快呢?按理PECMD也是调用DOS的啊。


在PECMD脚本中,本人一直反对调用CMD或BAT批处理,原因就是执行效率低。
如修改注册表、启动/停止服务、注册DLL/OCX、建立快捷方式等,PECMD绝对比CMD批处理快。
原因是批处理中每执行一项任务就要启动一次控制台工具,即反复启动其它EXE来完成
这些任务;而PECMD处理这些操作都是在同一进程内进行。

                批处理操作                                             PECMD操作
建立快捷方式      shortcut.exe(每建立1个快捷方式,就要启动1次shortcut)     LINK
启动/停止服务   NET START(每操作一项服务,就要启动一次 NET)            SERV
注册DLL/OCX     regsvr32.exe /s(每注册一个文件,就要启动一次regsvr32)  CALL
修改注册表      regedit.exe /s(每处理一个reg,就要启动一次regedit)     REGI


如果PECMD是通过调用DOS来完成它的功能的话,PECMD就不是PECMD了,这样的PECMD很多人都能做出来,
就目前来说,PECMD的表现比老外的XPEInit、WinPE7ldr、7PEldr任何一个都要好:
高效的登录速度、强大的功能、脚本化的配置、自由的启动控制、超小的体积和全面的兼容性,这6方面可以说是几乎完美。

附上一个今天刚更新的PECMD,现在在虚拟机中测试,文件也是从虚拟机中发的。
新增一条命令 HOME ,主要是时不时被一些恶意网修改主页、禁用主页、禁用注册表,
以往是手动恢复,手动多了觉得不方便,现在集成到PECMD中,PE也有用得到的时候。

HOME 命令对大白菜来说,既可做好事,也可做坏事。

┣━━━┿━━┿━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫
┃      │格式│HOME [IE主页],[数值1],[数值2]                                                               ┃
┃      ├──┼──────────────────────────────────────────────┨
┃      │功能│设置IE主页、锁定IE主页及禁用注册表编辑器。                                                  ┃
┃      ├──┼──────────────────────────────────────────────┨
┃      │参数│■IE主页: 只支持http网页,输入时省略"http://",如"
www.mssb.com";该参数省略时设置为空白页。 ┃
┃'HOME'│    │■数值1 : 非0时锁定IE主页,即禁止修改IE主页,该参数省略时默认为0,可修改IE主页。            ┃
┃      │    │■数值2 : 非0时禁用注册表编辑器,该参数省略时默认为0,可使用注册表编辑器。                  ┃
┃      ├──┼──────────────────────────────────────────────┨
┃      │示例│HOME
www.sbms.com,1,1 或 HOME www.mssb.com                                                  ┃
┃      ├──┼──────────────────────────────────────────────┨
┃      │备注│※本命令在脚本或CMD批处理中均可使用;IE主页或注册表编辑器被恶意工具锁定时可用该命令解锁。   ┃
┣━━━┿━━┿━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫


[ 本帖最后由 lxl1638 于 2009-7-14 18:09 编辑 ]

pecmd.zip

101.81 KB, 下载次数: 105, 下载积分: 无忧币 -2

回复

使用道具 举报

14#
发表于 2009-7-14 17:39:32 | 只看该作者
原帖由 lxl1638 于 2009-7-14 17:37 发表


在PECMD脚本中,本人一直反对调用CMD或BAT批处理,原因就是执行效率低。
如修改注册表、启动/停止服务、注册DLL/OCX、建立快捷方式等,PECMD绝对比CMD批处理快。
原因是批处理中每执行一项任务就要启动一 ...

谢谢老九指教了!看来老九的PECMD真是好东东啊。
回复

使用道具 举报

15#
发表于 2009-7-14 17:55:39 | 只看该作者
13楼,附上准备更新的PECMD,现在在虚拟机中测试。

在 XP、2003及其PE系统和WinPE2.1系统中测试均通过,
本人没有安装硬盘Vista、Win7,还没有在Win7PE中测试,也请有这类系统的朋友测试。

[ 本帖最后由 lxl1638 于 2009-7-14 18:05 编辑 ]
回复

使用道具 举报

16#
发表于 2009-7-14 18:13:45 | 只看该作者
SERV代替NET START后网络支持启动极快。。
回复

使用道具 举报

17#
发表于 2009-7-14 18:25:58 | 只看该作者
PECMD中的HOME,如何指定一个本地HTML文件作主页?
回复

使用道具 举报

18#
 楼主| 发表于 2009-7-14 20:48:21 | 只看该作者
又有新发现了,启用网络的速度成功进入5秒内!
回复

使用道具 举报

19#
发表于 2009-7-14 21:13:31 | 只看该作者
原帖由 xianglang 于 2009-7-14 18:25 发表
PECMD中的HOME,如何指定一个本地HTML文件作主页?


暂不支持,除非明天本人再更新一次。
你可以用 REGI 命令将 本地HTML 文件写入注册表,或者挂注册表上来修改。
回复

使用道具 举报

20#
发表于 2009-7-14 21:24:58 | 只看该作者
楼主,我用了你的方法改造,无法成功。

未命名.jpg (14.75 KB, 下载次数: 111)

未命名.jpg
回复

使用道具 举报

21#
 楼主| 发表于 2009-7-14 22:07:54 | 只看该作者
原帖由 lrbin50 于 2009-7-14 21:24 发表
楼主,我用了你的方法改造,无法成功。

这个,我也不好分析
我觉得你暂时不能够照搬我的命令,你应该结合你现在的参照修改使用,或者到时候我发个测试版PE上来,你就可以参考修改了
现在我的情况是:
NET_PART文件解压到SYSTEM32文件夹
INF文件是预先放在核心里的INF文件夹(怕解压他们的时候耽误时间,而且主要是他们压缩后并不占空间)
总之,方法是没问题的,你细心点,成功是肯定能够成功的

[ 本帖最后由 yh_tl 于 2009-7-14 22:10 编辑 ]
回复

使用道具 举报

22#
发表于 2009-7-14 22:10:51 | 只看该作者
我一直奇怪为什么这么慢,原来是pecmd执行批处理效率不行
楼主这个发现很有价值!
回复

使用道具 举报

23#
 楼主| 发表于 2009-7-14 22:19:47 | 只看该作者
原帖由 lrbin50 于 2009-7-14 21:24 发表
楼主,我用了你的方法改造,无法成功。

对了,还有可能你是直接用了这条命令的原因:
EXEC !7z.exe x NET_PART.7z -y -aos -o"%SystemRoot%\SYSTEM32"
应该改成
EXEC !7z.exe x NET_PART.7z -y -aos -o"%SystemRoot%"
因为我们的压缩包不一样!
回复

使用道具 举报

24#
发表于 2009-7-14 22:21:55 | 只看该作者
我改造也是按我的启用语句一句一句改造的啊。真晕。
回复

使用道具 举报

25#
发表于 2009-7-14 22:30:42 | 只看该作者
支持个,兴奋。上次我就想提速了,可除了小马没几个有响应,没想到用PECMD来提速,我好笨啊。只在批处理上面搞了个小动作。
http://bbs.wuyou.net/forum.php?m ... 1%CD%CB%B3%B1%C9%FA
回复

使用道具 举报

26#
发表于 2009-7-14 22:31:27 | 只看该作者
原帖由 lrbin50 于 2009-7-14 22:21 发表
我改造也是按我的启用语句一句一句改造的啊。真晕。

你可能复制不全必需文件。
回复

使用道具 举报

27#
发表于 2009-7-14 23:08:23 | 只看该作者
这个是5秒,呵呵。

@echo off
echo 正在加载网络,请稍候
cd /d %systemroot%\system
if /i "%1"=="ALL" goto other
pushd %ProgramFiles%\opera
IF EXIST flash.exe start /min /b flash.exe
popd

CLS
ECHO.
ECHO.
ECHO 复制必要文件...
ECHO.
ECHO.
COPY %SystemRoot%\SYSTEM\Drivers\*.* %SystemRoot%\SYSTEM32\Drivers >nul 2>nul
if not exist %SystemRoot%\INF MD %SystemRoot%\INF\ >nul 2>nul
COPY /y %SystemRoot%\SYSTEM\INF\*.* %SystemRoot%\INF >nul 2>nul
COPY /y %SystemRoot%\SYSTEM\NETCFGX.DLL %SystemRoot%\SYSTEM32 >nul 2>nul
COPY /y %SystemRoot%\SYSTEM\NETSHELL.DLL %SystemRoot%\SYSTEM32 >nul 2>nul
COPY /y %SystemRoot%\SYSTEM\NETMAN.DLL %SystemRoot%\SYSTEM32 >nul 2>nul
COPY /y %SystemRoot%\SYSTEM\MSWSOCK.DLL %SystemRoot%\SYSTEM32 >nul 2>nul
COPY /y %SystemRoot%\SYSTEM\TAPISRV.DLL %SystemRoot%\SYSTEM32 >nul 2>nul
COPY /y %SystemRoot%\SYSTEM\NET1.EXE %SystemRoot%\SYSTEM32 >nul 2>nul


cls
ECHO.
ECHO.
ECHO 提取驱动程序...
ECHO.
ECHO.
FOR /F %%i IN ('Dir /B /A-D ^".\DRIVERS_NET.CAB^"') DO PECMD DEVI ".\%%i"
START /Wait .\InfCacheBuild.exe %SystemRoot%
PECMD UPNP -pnp

cls
ECHO.
ECHO.
ECHO 安装网络组件...
ECHO.
ECHO.
for %%i in (ACTXPRXY.DLL,NETCFGX.DLL,NETSHELL.DLL,MLANG.DLL) do REGSVR32 /s %%i
::REGSVR32 /s JSCRIPT.DLL
PECMD UPNP -c p -i MS_TCPIP
PECMD UPNP -c c -i MS_MSCLIENT
PECMD UPNP -c s -i MS_SERVER
PECMD UPNP -c s -i MS_RASCLI
PECMD UPNP -c s -i MS_RASSRV
PECMD UPNP -c s -i MS_STEELHEAD

cls
ECHO.
ECHO.
ECHO 启动网络服务...
ECHO.
ECHO.
SET K=HKLM\SYSTEM\CurrentControlSet\Services&&SET W=AutoShareServer&&SET S=AutoShareWks
REG ADD %K%\Lanmanserver\parameters /v %S% /t REG_DWORD /d 0 /f
REG ADD %K%\Lanmanserver\parameters /v %W% /t REG_DWORD /d 0 /f
REG ADD %K%\lanmanworkstation\parameters /v %S% /t REG_DWORD /d 0 /f
REG ADD %K%\lanmanworkstation\parameters /v %W% /t REG_DWORD /d 0 /f
REG ADD "HKLM\SOFTWARE\Microsoft\Driver Signing" /f /v "Policy" /t REG_BINARY /d 00
PECMD SERV TCPIP
PECMD SERV DHCP
PECMD SERV NLA
PECMD SERV LMHOSTS
::PECMD SERV SERVER
PECMD UPNP -pnp -cn WinPE -wg WORKGROUP

cls
ECHO.
ECHO.
ECHO 删除无用文件并创建快捷链接...
ECHO.
ECHO.
DEL /Q %WinDir%\INF\*.PNF %WinDir%\INF\INFCACHE.1 >nul
PECMD IFEX %ProgramFiles%\TM2008\Bin\TM.exe,LINK %Desktop%\TM2008,%ProgramFiles%\TM2008\Bin\TM.exe
PECMD IFEX %ProgramFiles%\opera\operausb.exe,LINK %Desktop%\opera浏览器,%ProgramFiles%\opera\operausb.exe
::PECMD LINK !%Desktop%\硬盘QQ,%SystemRoot%\system\QQ\QQ.CMD,,%SystemRoot%\SYSTEM\QQ\QQ.ICO
PECMD LINK %Desktop%\PENETCFG网络设置,%SystemRoot%\System\PENETCFG.exe
PECMD LINK !%Desktop%\启用无线和PPPOE支持,%SystemRoot%\System\START_NET.CMD,ALL,%SystemRoot%\SYSTEM\NET_PART.ICO
PECMD LINK !%Programs%\网络工具\启用无线和PPPOE支持,%SystemRoot%\System\START_NET.CMD,ALL,%SystemRoot%\SYSTEM\NET_PART.ICO
PECMD LINK %Programs%\网络工具\PENETCFG网络设置,%SystemRoot%\System\PENETCFG.exe
PECMD LINK %Programs%\网络工具\远程协助,%SystemRoot%\System\网络工具\TTVNC.EXE
PECMD LINK %Programs%\网络工具\http file server,%SystemRoot%\System\网络工具\hfs2.exe
PECMD LINK %Programs%\网络工具\MAC扫描,%SystemRoot%\System\网络工具\MAC扫描.EXE
PECMD LINK %Programs%\网络工具\局域网查看器,%SystemRoot%\System\网络工具\LANSEEV1.59.EXE
PECMD LINK %Programs%\网络工具\飞鸽传书,%SystemRoot%\System\网络工具\IPMSG.EXE
PECMD LINK %Programs%\网络工具\远程登陆工具,%SystemRoot%\System\网络工具\PUTTY.EXE
If Exist "%USERPROFILE%\桌面\启用网卡支持.LNK" DEL "%USERPROFILE%\桌面\启用网卡支持.LNK"
REGSVR32 /s %windir%\system32\stobject.dll
FOR /F %%i IN ('@reg query "HKLM\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}" /s^|find /i "\Connection"') DO >nul REG ADD %%i /v ShowIcon /t REG_DWORD /d 1 /f
PECMD FIND flash.exe,KILL flash.exe
EXIT

:other
CLS
ECHO.
ECHO.
ECHO 安装无线网络组件...
ECHO.
ECHO.
COPY /y %SystemRoot%\SYSTEM\RASPHONE.EXE %SystemRoot%\SYSTEM32 >nul 2>nul
COPY /y %SystemRoot%\SYSTEM\RASPHONE.PBK %SystemRoot%\SYSTEM32 >nul 2>nul
COPY /y %SystemRoot%\SYSTEM\wzcsvc.dll %SystemRoot%\SYSTEM32 >nul 2>nul
COPY /y %SystemRoot%\SYSTEM\wzcsapi.dll %SystemRoot%\SYSTEM32 >nul 2>nul
FOR /F %%i IN ('Dir /B /A-D ^".\DRIVERS_NET_WIRELESS.CAB^"') DO PECMD DEVI ".\%%i"
START /Wait .\InfCacheBuild.exe %SystemRoot%
PECMD UPNP -pnp
for %%i in (wzcsapi.dll,wzcsvc.dll,rsaenh.dll) do REGSVR32 /s %%i
PECMD UPNP -v -c p -i MS_NDISUIO
PECMD UPNP -v -c s -i MS_WZCSVC
PECMD SERV EVENTLOG
PECMD SERV WZCSVC

cls
ECHO.
ECHO.
ECHO 启动PPPOE服务...
ECHO.
ECHO.
REGSVR32 /s NETMAN.DLL
PECMD UPNP -c p -i MS_L2TP
PECMD UPNP -c p -i MS_PPTP
PECMD UPNP -c p -i MS_PPPOE
PECMD UPNP -c s -i MS_RASMAN
PECMD UPNP -c p -i MS_WANARP
PECMD UPNP -c p -i MS_NDISWAN
PECMD SERV TAPISRV
PECMD SERV NETMAN
PECMD SERV RASMAN
::START RASPHONE.EXE -F %SystemRoot%\System32\RASPHONE.PBK -D 宽带连接
PECMD LINK !%Desktop%\挂断ADSL,%SystemRoot%\System\HANGUP.CMD,,HANGUP.ICO
PECMD LINK %Desktop%\ADSL宽带连接,%SystemRoot%\SYSTEM32\RASPHONE.PBK,,RASPHONE.EXE
PECMD LINK %Programs%\网络工具\ADSL 宽带连接,%SystemRoot%\SYSTEM32\RASPHONE.PBK,,RASPHONE.EXE
PECMD LINK !%Programs%\网络工具\挂断ADSL,%SystemRoot%\System\HANGUP.CMD,,HANGUP.ICO
If Exist "%USERPROFILE%\桌面\启用无线和PPPOE支持.LNK" DEL "%USERPROFILE%\桌面\启用无线和PPPOE支持.LNK"
PECMD FIND EXPLORER.EXE,KILL EXPLORER.EXE
EXIT
回复

使用道具 举报

28#
发表于 2009-7-14 23:12:12 | 只看该作者
原帖由 mapeimapei 于 2009-7-14 23:08 发表
这个是5秒,呵呵。

关键在SERV
回复

使用道具 举报

29#
 楼主| 发表于 2009-7-14 23:25:08 | 只看该作者
原帖由 mapeimapei 于 2009-7-14 23:08 发表
这个是5秒,呵呵。

恭喜,恭喜
虽然你的命令比我的繁琐,但是少了个解压的时间,如果再将命令简化点,4秒看来都有可能了
回复

使用道具 举报

30#
发表于 2009-7-14 23:26:51 | 只看该作者
原帖由 潮退潮生 于 2009-7-14 22:31 发表

你可能复制不全必需文件。

哦,可能是7Z.EXE还没复制完文件,EXEC后可加=号,试试去。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-17 07:32

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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