从 u/InternetStranger4You 分叉而来,并进行了一些重大修改。
代码分为两个模块:
Microsoft.Windows.PSGeneral
Microsoft.Windows.PSMitSec
Microsoft.Windows.PSGeneralAdd-DismPackage当然,这些模块仅用于演示目的。如果您希望正确使用它们,应创建清单文件并适当引用依赖项。
使用 PSFramework 替代内置 cmdlet。
Add-DismPackage 似乎总是失败一次。错误信息本身说明可能是临时错误(例如更新服务堆栈时的竞争条件)。等待几秒后重试总是成功。
Test-PSMitSec_CVE202241099Add-DismPackage 第一次失败时,会输出大量进度条文本(看起来非常混乱)。应该抑制这些输出。Resize-WinREPartition 添加参数,以接受来自其他源(例如带有安装介质的 U 盘)的 Winre.wim。