无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
12
返回列表 发新帖
楼主: fujianabc
打印 上一主题 下一主题

[分享]成功在光盘启动的winpe上实现EWF!

[复制链接]
31#
 楼主| 发表于 2006-3-12 18:43:28 | 只看该作者

[分享]成功在光盘启动的winpe上实现EWF!

下面引用由Rinrin2006/03/12 06:07pm 发表的内容:
确实
很久以前我把BlueCon移植到两张软盘上(基于2K)
那TXTSETUP.SIF改的真是头昏眼花啊
哈哈
真巧,以前我在无聊时也干过这事,最终把2000的控制台放在了一个2.88M的软盘镜像上了。
回复

使用道具 举报

32#
发表于 2006-3-13 00:54:34 | 只看该作者

[分享]成功在光盘启动的winpe上实现EWF!

[这个贴子最后由wolfteeth在 2006/03/13 02:14am 第 4 次编辑]
下面引用由fujianabc2006/03/12 11:08am 发表的内容:
各位遇到*.sys找不到的,是否都是用的深山红叶?如果是,则说明此方法不支持xp sp1的winpe。我在一楼说了,只在xp sp2和2003 sp1的winpe测试成功,深山红叶是xp sp1的winpe,我没试过。
奇怪,还是不行。。。引入了新的注册表后。。。
我是用pebuilder314生成的,确实是sp2的版本,不过待会继续试试,其实我在上面看到descirption的时候已经修正了....
回复

使用道具 举报

33#
发表于 2006-3-13 11:14:04 | 只看该作者

[分享]成功在光盘启动的winpe上实现EWF!

下面引用由godant2006/03/12 04:05pm 发表的内容:
纠正一下,是要加入txtsetup.sif。
如不加入,可以加入Enum\Root\....的起动项,如直接加到txtsetup.sif,就不用。
如图:启动后会生成一个TEMP,CDROM盘值比原来多出30M,不知是否调用内存,我是用MVPC-64M测试 ...
我使用 pebuilder 的插件测试不成功。
能否把 Enum\Root\.. 生成注册表文件传上来。
回复

使用道具 举报

34#
发表于 2006-3-13 11:48:38 | 只看该作者

[分享]成功在光盘启动的winpe上实现EWF!

看来得要重新做一个pe才能用此功能,无论如何,谢谢fujianabc !
回复

使用道具 举报

35#
发表于 2006-3-13 14:28:16 | 只看该作者

[分享]成功在光盘启动的winpe上实现EWF!

下面引用由s2106032006/03/13 11:14am 发表的内容:
我使用 pebuilder 的插件测试不成功。
能否把 Enum\Root\.. 生成注册表文件传上来。
那图上不是有了吗?再不行从你的注册表上导一个,改个名就行。
看来我估计是fltmgr.sys的问题,我这是从XPsp2上提取的,你试下行不,如果再不行的话,就是pebuilder的算法问题了,XPsp1估计不行,2K3和2K3sp1、XPsp2肯定行。
这是fltmgr.sys,你看看行不:[UploadFile=fltmgr_1142231281.rar]
回复

使用道具 举报

36#
发表于 2006-3-15 19:03:43 | 只看该作者

[分享]成功在光盘启动的winpe上实现EWF!

已经解决,在911上找到了一个插件。
[UploadFile=01_1142420436.jpg]
插件:
; fbwf.inf
; PE Builder v3 plug-in INF file for File-based write filter
; Created by SCP
[Version]
Signature= "$Windows NT$"
[PEBuilder]
Name="File-based write filter"
Enable=1
[SourceDisksFiles]
fltmgr.inf=20
files\fbwflib.dll=2,,1
files\fbwf.sys=4,,1
;%11%\emptyregdb.dat=2; Required for XPE
files\emptyregdb.dat=2
[SetupReg.AddReg]
0x1,"ControlSet001\Services\fbwf","DisplayName","fbwf"
0x2,"ControlSet001\Services\fbwf","ImagePath","system32\DRIVERS\fbwf.sys"
0x1,"ControlSet001\Services\fbwf","Description","File Based Write Filter Driver"
0x4,"ControlSet001\Services\fbwf","ErrorControl",0x1
0x4,"ControlSet001\Services\fbwf","Start",0x0
0x4,"ControlSet001\Services\fbwf","Type",0x2
0x7,"ControlSet001\Services\fbwf","DependOnService","fltmgr"
0x1,"ControlSet001\Services\fbwf\Instances","DefaultInstance","Fbwf Instance"
0x1,"ControlSet001\Services\fbwf\Instances\Fbwf Instance","Altitude","226000"
0x4,"ControlSet001\Services\fbwf\Instances\Fbwf Instance","Flags",0x0
;--------------------------------------------------------------------------------------
0x4,"ControlSet001\Services\FltMgr","Type",0x2
0x4,"ControlSet001\Services\FltMgr","Start",0x3
0x4,"ControlSet001\Services\FltMgr","ErrorControl",0x1
0x2,"ControlSet001\Services\FltMgr","ImagePath","system32\DRIVERS\fltMgr.sys"
0x1,"ControlSet001\Services\FltMgr","DisplayName","FltMgr"
0x1,"ControlSet001\Services\FltMgr","Description","File System Filter Manager Driver"
0x4,"ControlSet001\Services\FltMgr","AttachWhenLoaded",0x0
;--------------------------------------------------------------------------------------
0x4,"ControlSet001\Enum\Root\LEGACY_FLTMGR","NextInstance",0x1
0x1,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000","Service","FltMgr"
0x4,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000","Legacy",0x1
0x4,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000","ConfigFlags",0x0
0x1,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000","Class","LegacyDriver"
0x1,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000","ClassGUID","{8ECC055D-047F-11D1-A537-0000F8753ED1}"
0x1,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000","DeviceDesc","FltMgr"
[AddLine]
"txtsetup.sif", "BusExtenders.Load",     "fbwf     = fbwf.sys"
"txtsetup.sif", "BusExtenders.Load",     "fltmgr   = fltmgr.sys"
"txtsetup.sif", "files.fbwf",     "fbwf.sys,4"
"txtsetup.sif", "files.fbwf",     "fbwflib.dll,2"
"txtsetup.sif", "files.fltmgr",   "fltmgr.sys,4"
"txtsetup.sif", "files.fltmgr",   "fltlib.dll,2"
其中文件 emptyregdb.dat 在XPSP2里提取的。
希望对大家有帮助。
回复

使用道具 举报

37#
发表于 2006-3-29 16:09:05 | 只看该作者

[分享]成功在光盘启动的winpe上实现EWF!

下面引用由fujianabc2006/03/12 06:43pm 发表的内容:
真巧,以前我在无聊时也干过这事,最终把2000的控制台放在了一个2.88M的软盘镜像上了。
请问有没有修改好的OOBE BLUE CON 2.88M镜像?
回复

使用道具 举报

38#
 楼主| 发表于 2006-3-29 18:47:44 | 只看该作者

[分享]成功在光盘启动的winpe上实现EWF!

下面引用由wuyouman012006/03/29 04:09pm 发表的内容:
请问有没有修改好的OOBE BLUE CON 2.88M镜像?
以前无聊时干过,做完没多久就删了。
想要体积小的控制台,可以试试用nt 4光盘生成bluecon.
回复

使用道具 举报

39#
发表于 2006-3-29 20:29:57 | 只看该作者

[分享]成功在光盘启动的winpe上实现EWF!

谢谢答复,控制台也没什么用。
回复

使用道具 举报

40#
发表于 2006-3-29 21:00:03 | 只看该作者

[分享]成功在光盘启动的winpe上实现EWF!

无论如何,谢谢fujianabc !
回复

使用道具 举报

41#
发表于 2006-11-23 22:16:27 | 只看该作者
谢谢楼主,已经试验成功!!!
附新版的FLTMGR.SYS

[ 本帖最后由 zhfzl2006 于 2006-11-24 09:04 AM 编辑 ]

Snap2.jpg (21.46 KB, 下载次数: 37)

Snap2.jpg

Snap3.jpg (22.4 KB, 下载次数: 44)

Snap3.jpg

FLTMGR.rar

61.6 KB, 下载次数: 96, 下载积分: 无忧币 -2

回复

使用道具 举报

42#
发表于 2006-11-26 23:46:47 | 只看该作者
写入保护区的数据是压缩存放的,这样读写速度很慢
回复

使用道具 举报

43#
发表于 2006-11-27 00:01:25 | 只看该作者
想指出一些本帖中提及的关于fbwf的概念:

楼主所说的“添加ewf功能”其实应该说是 “添加fbwf功能”。fbwf 类似于xp embedded的ewf,可以对winpe的光盘进行写操作。但是跟ewf不同,它是基于文件(而不是基于系统)的写过滤驱动器 (File Based Write Filter Driver)。

对于以XP和 2K3造成的winpe而言(Vista例外),fbwf可以有效应用于建基在光盘的winpe,包括iso。但是当应用于建基在硬盘的winpe,包括minint,sdi和img,fbwf将变得无效。

为了实现winpe的更大通用性,我把ramdriv和fbwf都安装上,并在建基在硬盘的winpe加上一个叫SDI.TAG的标签文件。我的 FbwfRamAuto 是这样控制的:

1. 假如没有发现SDI.TAG,就是光盘的winpe,自动分配20%内存作fbwf,5%内存作ramdriv,把环境变量temp和tmp指向X:。
2. 假如发现SDI.TAG,就是硬盘的winpe,自动分配25%内存作ramdriv 不设fbwf,在C盘设128MB的页文件,把环境变量temp和tmp指向C:\temp。

详情如下:
; <AUT2EXE VERSION: 3.2.0.1>

; ----------------------------------------------------------------------------
; <AUT2EXE INCLUDE-START: H:\Program Files\AutoIt3\MyScript\FBWFRamAuto.au3>
; ----------------------------------------------------------------------------

;;get system RAM in KB
$memget = MemGetStats()
;$sysram = round($memget[1] / 1024)



;SplashTextOn(" "," ...auto setting RAM Drive and FBWF... "  ,350, 30, -1, -1, 1, "",12,500)


;MsgBox(8192, "  Total System Memory "& $sysram & " MB", "   Total RAM drive "  & ($sysram/20) & " MB", 15)

If Not(FileExists(@ScriptDir & "\SDI.TAG")) Then

        $finalram = ($memget[1] / 20 * 1024)   ; 5% of System Memory in Bytes for Ram drive !
        If $finalram < 2097152 Then
                $finalram = 2097152
        Else
                If $finalram < 8388608        Then
                        $finalram = 4194304
                EndIf
        EndIf

        $finalfbwf = ($memget[1] / 5 / 1024)    ; 20% of System Memory in Mega Bytes for FBWF !
        If $finalfbwf < 32 Then
                $finalfbwf = 16
        EndIf

        ;;Write auto chosen size to the registry

             RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Ramdriv\Parameters", "DiskSize", "REG_DWORD", $finalram) ;; set ramdisk size
             RunWait("devcon.exe disable ramdriv", "", @SW_HIDE);; disable the ramdisk driver
             RunWait("devcon.exe enable ramdriv", "", @SW_HIDE);; re-enable the ramdisk driver to accept the new size

           RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\FBWF", "WinPECacheThreshold", "REG_DWORD", $finalfbwf) ;; set FBWF size
             RunWait("sc.exe start fbwf", "", @SW_HIDE) ;; enable FBWF service

        RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment", "temp", "REG_EXPAND_SZ", "X:");; set Environment Variable temp
        RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment", "tmp", "REG_EXPAND_SZ", "X:");; set Environment Variable tmp
        RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment", "ramdrv", "REG_EXPAND_SZ", "B:");; set Environment Variable ramdrv
        RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment", "ProfilesDir", "REG_EXPAND_SZ", "X:\Documents And Settings");; set Environment Variable ProfilesDir
        RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment", "UserProfile", "REG_EXPAND_SZ", "X:\Documents And Settings\Default User");; set Environment Variable UserProfile
        RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment", "USERNAME", "REG_SZ", "Default User");; set Environment Variable USERNAME
        RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment", "AppData", "REG_EXPAND_SZ", "X:\Documents And Settings\Default User\Application Data");; set Environment Variable AppData
        RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList", "AllUsersProfile", "REG_SZ", "All Users");; set AllUsersProfile
        RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList", "DefaultUserProfile", "REG_SZ", "Default User");; set AllUsersProfile
        RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList", "ProfilesDirectory", "REG_EXPAND_SZ", "X:\Documents And Settings");; set ProfilesDirectory
       
Else

        $finalram = ($memget[1] / 4 * 1024)   ; 25% of System Memory in Bytes for Ram drive !
        If $finalram < 2097152 Then
                $finalram = 2097152
        Else
                If $finalram < 8388608        Then
                        $finalram = 4194304
                EndIf
        EndIf

        ;;Write auto chosen size to the registry

             RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Ramdriv\Parameters", "DiskSize", "REG_DWORD", $finalram) ;; set ramdisk size
             RunWait("devcon.exe disable ramdriv", "", @SW_HIDE);; disable the ramdisk driver
             RunWait("devcon.exe enable ramdriv", "", @SW_HIDE);; re-enable the ramdisk driver to accept the new size

        RunWait("SetPageFile.exe c:\pagefile.sys 128", "", @SW_HIDE);;set 128MB pagefile to C:
        RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment", "temp", "REG_EXPAND_SZ", "C:\temp");; set Environment Variable temp
        RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment", "tmp", "REG_EXPAND_SZ", "C:\temp");; set Environment Variable tmp
        RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment", "ramdrv", "REG_EXPAND_SZ", "B:");; set Environment Variable ramdrv
        RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment", "ProfilesDir", "REG_EXPAND_SZ", "X:\Documents And Settings");; set Environment Variable ProfilesDir
        RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment", "UserProfile", "REG_EXPAND_SZ", "X:\Documents And Settings\Default User");; set Environment Variable UserProfile
        RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment", "USERNAME", "REG_SZ", "Default User");; set Environment Variable USERNAME
        RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment", "AppData", "REG_EXPAND_SZ", "X:\Documents And Settings\Default User\Application Data");; set Environment Variable AppData
        RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList", "AllUsersProfile", "REG_SZ", "All Users");; set AllUsersProfile
        RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList", "DefaultUserProfile", "REG_SZ", "Default User");; set AllUsersProfile
        RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList", "ProfilesDirectory", "REG_EXPAND_SZ", "X:\Documents And Settings");; set ProfilesDirectory

EndIf

exit


; ----------------------------------------------------------------------------
; <AUT2EXE INCLUDE-END: H:\Program Files\AutoIt3\MyScript\FBWFRamAuto.au3>
; ----------------------------------------------------------------------------
回复

使用道具 举报

44#
发表于 2006-11-27 09:05:51 | 只看该作者
楼上的好强!

赞一个!

PS:本人已经在标准XP SP2上成功实现FBWF!
回复

使用道具 举报

45#
发表于 2006-11-27 12:48:29 | 只看该作者
原帖由 天风 于 2006-11-27 09:05 AM 发表
楼上的好强!

赞一个!

PS:本人已经在标准XP SP2上成功实现FBWF!


版主:能否提示下方法?指导指导?
回复

使用道具 举报

46#
发表于 2006-11-27 12:57:31 | 只看该作者
请查看FBWF相关帖子!
回复

使用道具 举报

47#
发表于 2006-11-28 11:32:47 | 只看该作者
为什么附件下不了啊??

请楼主重新发一下.
回复

使用道具 举报

48#
发表于 2006-11-28 13:43:04 | 只看该作者
原帖由 khauyeung 于 2006-11-27 12:01 AM 发表
想指出一些本帖中提及的关于fbwf的概念:

楼主所说的“添加ewf功能”其实应该说是 “添加fbwf功能”。fbwf 类似于xp embedded的ewf,可以对winpe的光盘进行写操作。但是跟ewf不同,它是基于文件(而不是基于系 ...

我在虚拟机中测试,分别设置内存128M和256M,RAMDRIVE设置为内存的1/8(12.5%),FBW设置为内存的1/10(10%)。
内存为128M时RAMDRIVE为16M自动设置成功;FBWF为32M,不成功。
内存为256M时RAMDRIVE为32M自动设置成功;FBWF为32M,不成功。
不知为何FBWF始终为32M???
回复

使用道具 举报

49#
发表于 2006-11-28 14:02:40 | 只看该作者
刚才刻盘在实机上(512M内存)测试了一下,还是不行。

Snap2.jpg (82.33 KB, 下载次数: 41)

Snap2.jpg

Snap3.jpg (63.67 KB, 下载次数: 42)

Snap3.jpg
回复

使用道具 举报

50#
发表于 2006-11-28 15:32:49 | 只看该作者
FBWF自动设置不成功。发现问题:
如果"WinPECacheThreshold"=dword:00000018项设置了,fbwf则启动后使用该设置值,而不使用FBWFRamAuto.exe设置的值;如果"WinPECacheThreshold"=dword:00000018项未设置了,也不使用FBWFRamAuto.exe设置的值,而是使用fbwf的默认值32M。也就是说,用FBWFRamAuto.exe自动设置无效,fbwf启动在FBWFRamAuto.exe运行之前。

Snap2.jpg (85.52 KB, 下载次数: 43)

Snap2.jpg

Snap1.jpg (66.76 KB, 下载次数: 43)

Snap1.jpg
回复

使用道具 举报

51#
发表于 2006-11-29 16:34:24 | 只看该作者
呵呵,我用这个工具,在老九的PE光盘中加入了卡巴司机的杀毒软件(带保护功能,在线升级)!

见这里:http://vip.cech.com.cn/316334/8d ... 0d4fc099f14a2f.down



[ 本帖最后由 Civiwu 于 2006-11-29 04:42 PM 编辑 ]
回复

使用道具 举报

52#
发表于 2006-12-2 22:19:47 | 只看该作者
PE上还用得着带保护功能啊?能扫描就行了嘛,我是把卡巴压缩放在PE里,运行时自解压到硬盘再运行。
回复

使用道具 举报

53#
发表于 2009-2-3 13:25:55 | 只看该作者
精华帖子呀,收藏一下
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-6-29 09:23

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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