lzg_ad:在构建好XPE操作系统上增加EWF功能

简介:
如何在已经做好的XPE操作系统上构建EWF功能,这是一个经常被问到的话题。在实际应用环境中,经常会有这样的情况,我们手上已经有做好的XPE操作系统的设备,但是我们没有原始的XPE工程,这时如果我们需要将RAM模式的EWF修改成DISK模式的EWF,或者在Ghost后发现EWF不可用了,这时我们应该如何来处理和恢复EWF功能呢?

    让我们先把应用环境来进行分类:
    1. 现有的XPE操作系统根本就不具有EWF功能,也就是在构建XPE操作系统的时候,没有使用EWF NTLDR。这种情况下,我们的XPE如果需要手动添加EWF功能,就需要先将系统原有的NT Loard改为EWF NTLDR,然后再设置使用RAM模式还是DISK模式。具体实现方式请参见: http://leizhigang.blog.51cto.com/1059899/238257
    2. 现有的XPE操作系统已经具有EWF功能,也就是在构建XPE操作系统的时候,已经添加了以下的EWF组件:
  • EWF NTLDR                                        EWF操作系统内核
  • Enhanced Write Filter                            EWF核心功能组件,包括ewfdll.dll,ewf.sys,ewfinit.dll.ewf.inf等核心文件
  • Enhanced Write Filter API (EWF API)              EWF API支持文件,包括ewfapi.dll等编程接口
  • EWF Manager Console application                  EWF控制台命令组件,是执行ewfmgr的必要组件
    针对这样的XPE操作系统,再修改或者恢复EWF功能,实现起来就比较容易。下面我们来分别看一下如何恢复或者设置EWF的RAM和DISK模式。以下例子均假设XPE的EWF分区为C盘。
(1)RAM模式
    如果我们的XPE在重新Ghost后出现EWF-RAM错误的情况,或者在使用过程中出现EWF-RAM损坏的情况,我们应该如何来恢复呢?
  • 首先,必须确认EWF功能已经不可用(如果可用,我们就不需要恢复了),方法是打开CMD->ewfmgr c:,执行命令后返回的应该是错误信息。
  • 其次,需要定义一个注册表文件,方法是新建一个文本文件,然后将以下内容拷贝到这个文本文件中:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf]
"ErrorControl"=dword:00000001
"Group"="System Bus Extender"
"Start"=dword:00000000
"Type"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{71A27CDD-812A-11D0-BEC7-08002BE2092F}]
"UpperFilters"="Ewf"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ewf\Parameters\Protected\Volume0]
"VolumeID"="{1EA414D1-6760-4625-8CBE-4F9F85A48E15}"
"Type"=dword:00000001
"ArcName"="multi(0)disk(0)rdisk(0)partition(1)"
  • 最后,把这个文件命名为XXX.reg,在XPE操作系统上双击导入到注册表中。重新启动计算机,然后在CMD中执行ewfmgr c:,看看EWF的状态是否正常。
注意:这个EWF构建时必须将XPE生成在C盘,同时C盘分区不能太大,如果在别的盘符,那就改一下组册表文件,修改方法如下:
把注册表文件用记事本打开后,最后一行:
如果部署在C盘,则应该是:
"ArcName"="multi(0)disk(0)rdisk(0)partition(1)"

如果部署在D盘,则应该是:
"ArcName"="multi(0)disk(0)rdisk(0)partition(2)"
依次类推。
(2)DISK模式
    如果我们的XPE在重新Ghost后出现EWF错误的情况,或者在使用过程中出现EWF损坏的情况,或者原有的EWF是RAM模式,我们需要修改为DISK模式。应该如何来实现呢?
  • 首先,我们要保证我们的XPE操作系统中已经添加了Enhanced Write Filter和Enhanced Write Filter API (EWF API)组件。确定方法可以在XPE中搜索ewfdll.dll和ewfapi.dll文件,如果没有就说明没有添加这两个组件。如果没有也没关系,我们可以手动把这两个文件拷贝到XPE系统的system32目录下并注册就可以了。
  • 其次,构建注册表文件,新建一个文本文件并命名为XXX.reg,把以下内容拷贝到这个文件中:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EWF\FBA]
"DiskSig"=dword:4f544c45
"OVSize"=dword:0007a120             ----> 应该是500m  这里设置你的未分配分区的大小
"OVLevel"=dword:00000001
"PVConfigs"=dword:00000001
"EwfEnable"=hex(7):30,00,00,00,00,00
"EnableLazyWrite"=hex(7):30,00,00,00,00,00
"PVDisk"=hex(7):30,00,00,00,00,00
"PVPart"=hex(7):31,00,00,00,00,00
"PVDiskType"=hex(7):30,00,00,00,00,00
"PVType"=hex(7):30,00,00,00,00,00    ---〉30 为disk ,31 为ram
"PVOptimize"=hex(7):32,00,00,00,00,00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EWF\Parameters\Protected\Volume0]
"ArcName"="multi(0)disk(0)rdisk(0)partition(1)"
"ClumpSize"=dword:00000200
"Type"=dword:00000000                ----〉0为disk  1 为 ram
"Enabled"=dword:00000001
"VolumeID"="{CCE9E3DA-1B74-43db-910A-9D58FACF88FE}"   --->这个要加上 可以用GUIDGEN产生一个来
  • 再次, 在XPE操作系统中打开磁盘管理器,然后再C盘分区后面建立一个未分配磁盘分区,分区大小应该和你注册表设置的一致。注意,这个分区应该存在于C盘和D盘之间,如果创建在所有分区的最后面,可能会出错,只是可能。呵呵;
  • 然后,在XPE中导入上面做好的注册表文件(XXX.reg),重新启动计算机;
  • 最后,在XPE的CMD中运行以下命令:
rundll32 ewfdll.dll,ConfigureEwf
然后重新启动计算机。重启完成后,在CMD中执行ewfmgr c:,看看EWF的状态是否正常。
注意:如果未分配空间在其他分区后面,不一定能够成功。


本文转自雷志刚 51CTO博客,原文链接:http://blog.51cto.com/leizhigang/237947
相关文章
|
2月前
|
安全 Linux 编译器
探索Linux内核的奥秘:从零构建操作系统####
本文旨在通过深入浅出的方式,带领读者踏上一段从零开始构建简化版Linux操作系统的旅程。我们将避开复杂的技术细节,以通俗易懂的语言,逐步揭开Linux内核的神秘面纱,探讨其工作原理、核心组件及如何通过实践加深理解。这既是一次对操作系统原理的深刻洞察,也是一场激发创新思维与实践能力的冒险。 ####
|
13天前
|
安全 Anolis
龙蜥社区落地开源生态发展合作倡议,构建开放兼容的操作系统生态
通过共同努力,三个社区基于服务器操作系统场景,在操作系统内核等关键共性技术链统一方面达成了一致。
|
9天前
|
人工智能 安全 Android开发
移动应用开发与操作系统的深度协同:构建高效、安全的移动生态####
【10月更文挑战第21天】 本文深入探讨了移动应用开发与移动操作系统之间的内在联系与相互影响,强调了两者在构建高效、安全移动生态系统中的关键作用。通过分析当前主流移动操作系统(如Android、iOS)的特性及发展趋势,结合移动应用开发的最新技术与挑战,本文旨在为开发者提供一套全面的理解框架,以促进更加协同高效的应用开发实践。 ####
41 18
|
2月前
|
机器学习/深度学习 搜索推荐 安全
构建未来:移动应用开发与操作系统的协同进化
【10月更文挑战第20天】在数字化时代的浪潮中,移动应用和操作系统作为科技进步的双引擎,正驱动着人类社会向更高效、互联的方向迈进。本文深入探讨了移动应用开发的最新趋势、移动操作系统的创新特性,并分析了它们如何相互影响,共同塑造我们的数字生活。通过具体案例分析,我们揭示了技术革新如何激发新的应用场景,以及开发者如何利用这些进步来创造更加智能、个性化的应用体验。文章还讨论了面临的挑战和未来的机遇,为读者提供了对这一不断演进领域的深刻洞察。
|
2月前
|
安全 Android开发 iOS开发
Android vs iOS:探索移动操作系统的设计与功能差异###
【10月更文挑战第20天】 本文深入分析了Android和iOS两个主流移动操作系统在设计哲学、用户体验、技术架构等方面的显著差异。通过对比,揭示了这两种系统各自的独特优势与局限性,并探讨了它们如何塑造了我们的数字生活方式。无论你是开发者还是普通用户,理解这些差异都有助于更好地选择和使用你的移动设备。 ###
56 3
|
2月前
|
机器学习/深度学习 Android开发 开发者
构建未来:移动应用开发与操作系统的协同进化
【10月更文挑战第1天】构建未来:移动应用开发与操作系统的协同进化
36 3
|
3月前
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。
107 12
|
2月前
|
缓存 算法 安全
探索操作系统的心脏:内核功能与性能优化####
在数字化时代,操作系统作为计算机系统的灵魂,其性能和稳定性直接影响用户体验。本文深入剖析了操作系统的核心——内核,探讨了其在资源管理、安全性和效率方面的关键作用,并提出了针对性能优化的策略,旨在为开发者和用户提供更高效、更安全的操作体验。 ####
|
3月前
|
人工智能 安全 数据安全/隐私保护
移动应用与系统:构建现代数字生态的双引擎在数字化浪潮席卷全球的今天,移动应用与系统作为连接用户与数字世界的重要桥梁,正发挥着越来越重要的作用。它们不仅改变了人们的生活方式,也推动了各行各业的创新与发展。本文将深入探讨移动应用开发的最新趋势、移动操作系统的演进历程以及两者如何共同塑造我们的未来。
随着智能手机的普及和移动互联网的快速发展,移动应用已成为人们日常生活中不可或缺的一部分。从社交媒体到移动支付,从在线教育到远程办公,移动应用无处不在,极大地丰富了我们的生活体验。与此同时,移动操作系统也在不断进化,为应用提供了更加稳定、高效的运行环境。本文旨在分析当前移动应用开发的热点技术、探讨移动操作系统的未来发展方向,并展望这两者如何相互促进,共同推动数字经济的繁荣。
|
3月前
|
机器学习/深度学习 人工智能 搜索推荐
构建未来:移动应用开发与操作系统的融合之旅
【9月更文挑战第23天】在这个数字时代,移动设备已成为我们日常生活不可或缺的一部分。随着技术的进步,移动应用开发和移动操作系统不断进化,它们相互之间的界限开始模糊。本文将探讨移动应用开发的最新趋势、移动操作系统的创新以及这两者如何共同塑造我们的数字未来。通过深入浅出的分析,我们将了解这些技术是如何影响我们的生活、工作和沟通方式的。让我们一起踏上这场探索移动技术未来的旅程,见证它们如何共同编织出一个更加互联、智能和响应迅速的世界。
38 1