关于Dism++底层实现的一些说明,送给还在纠结微软Dism运行时的人

回复 星标
更多
关于Dism++底层实现的一些说明,送给还在纠结微软Dism运行时的人
»

Dism++全面切换到CBS后也快半年了,但是现在还是有很多人来问我,精简了Dism的PE能正常使用Dism++么?Dism++的Dism组件升级到Win10 XXXX了没?

可能我的说明不够显眼,现在我在解释下,Dism++曾经需要过Dism,但是现在已经不需要了……

Dism++现在是基于CBS(Component Based Servicing Reference)的API级别实现,不需要任何Dism组件,即可运行。

PS:CBS是微软内部使用的一个接口,比如pkgmgr、Windows Update都是基于CBS实现。

因此Dism++对PE的要求非常低,哪怕的你彻底阉割了Dism,Dism++依然可以正常运行。Vista系统都能正常使用Dism++。因为在API上根本不依赖Dism,所以才有了更加强大的自主权!大家不要在纠结微软Dism版本号了……

对Dism++来说,是没有意义的事情。

常见问题解答:

问:为什么要放弃微软Dism?

答:主要是为了兼容性问题,比如Win10的Dism处理Win8.1就一堆兼容性问题。根源是微软对DismCore的加载机制做了更改,导致了不兼容的发生。Dism++为了避免受影响,已经全部自己实现,带来更好的兼容性,Vista~Win10全兼容,同时大幅度缩小体积。

问:为什么Dism++比其他同类Dism工具体积更小,是不是功能不全?

答:Dism++体积小是因为API都是自己实现的,不需要庞大的Dism运行时。所以体积小、兼容性好。同时功能更加强大。

问:Dism++的esd解密、esd转iso怎么不更新esddecrypt.exe?也不适配最新Win10esd解密Key!

答:先说ESD解密Key吧,微软这几个月根本没变,自然不用更新Key。另外这个功能Dism++都是自己用API实现的,无需esddecrypt.exe,ISO生成也是API级别实现,也不用微软的ISO制作工具生成。现在大多数工具都是esddecrypt的基础上加了个命令行调用实现的。所以Dism++可以全自动匹配esd对应的解密密钥,而其他工具做不到这点,因为他们依赖esddecrypt。

问:听说Dism++是使用C#写的,不支持PE、不支持XP,对不对?

答:你不要听别人瞎扯淡,Dism++主要使用C++实现。完美支持各种精简PE,不存在PE下不能使用Dism++的问题。不支持XP,是因为XP没有CBS,Dism++在设计时就以Vista标准设计的。

问:听说Dism++支持热备份跟热还原,但是我怎么从来没看到过?

答:Dism++一直支持热备份、热还原,无需PE~~具体功能你可以到工具箱里面看看系统备份跟系统还原。

问:Dism++既然已经用了CBS,怎么不叫CBS++

答:首先Dism++已经存在不少时间了,经常换名让人误解。其次CBS只是其中的一个主要接口,单纯用CBS衡量也不准确。所以继续沿用Dism++。

问:为什么初雨论坛取消了?

答:最主要是论坛太卡了,我们只能精简下,只留下一个主页提高用户体验。另外基本上的人都是通过邮箱或者QQ群反馈的BUG。留个论坛也失去了他的初衷。

Dism++具体接口应用一览:

CBS:实现更新管理,比如添加删除更新/功能、验证更新状态、更新清理等……

WIMGAPI:实现WIM、ESD编辑、管理,ESD解密、ESD转ISO等等……

DMI:用于枚举/添加/删除驱动等(PS 此功能最低支持Windows 2000,但是没开放)

Wof API:用于实现Compact/WIMBoot相关功能

SCL API:用于计算/设置密钥,获取密钥详情,验证某密钥是否匹配选中系统(激活备份功能需要)

MSI API:用于验证msp是否适用于选中系统,以及安装msp更新

Appx Manger API:用于管理Windows应用商店应用,此外过期Appx清理也需要此API支持。

WIMGAPI、Wof API依赖当前系统文件,Dism++为了提高兼容性,已经自带了这二个API的对应的文件。其他API均从目标映像加载,当前系统精简的再厉害也不影响功能。

此帖已被锁定,无法回复
新窗口打开 关闭