有谁知道是否有一个注册表标志可以用来检测 Windows 恢复环境是否启用或禁用?
目前,我在应用程序部署的“检查要求”部分中使用此脚本:
<#
.SYNOPSIS
Detects if a Windows Recovery Partition needs to be setup
.DESCRIPTION
Uses powershell to check if WinRE is enabled
.NOTES
To be used in the Endpoint Manager and as the remidiation script
#>
try {
$reagentcOutput = reagentc /info
# Check if Recovery is already enabled
if ($reagentcOutput -match "Enabled") {
Write-Output "Enabled"
exit 0
} else {
Write-Output "Not"
exit 0
}
}
catch {
Write-Host "An Error occured! Hopefully this helps: $reagentcOutput"
Write-Host "ERROR: at $($_.InvocationInfo.ScriptLineNumber)"
Write-Error "Message: " $_.Exception.Message
Write-Host "StackTrace: "
Write-Host $_.Exception.StackTrace
Write-Host ""
exit 1
}
exit 0
但问题似乎是 Intune 没有按照我预期的方式评估此脚本的返回,或者脚本的语法或执行存在其他问题。我找不到任何工作需求脚本的示例。
本质上,我只是想添加一个“要求”,即在评估安装应用程序(配置分区并移动 WinRE img 文件)之前,WinRE 尚未启用
在比较使用 Reagentc 命令禁用和启用 WinRE 的结果后,我发现没有注册表修改。但是,我发现文件夹内部存在差异
C:\Windows\System32\Recovery
。基本上有两个变化:
Winre.wim
存在于文件夹内。禁用后,该文件不存在。ReAgent.xml
已更改。以下是关于 的差异
ReAgent.xml
。我只包含已更改的 XML 标记。启用
残疾人
您应该检查计算机上的情况,尤其是那些没有 WinRE 的计算机,但我的猜测是检查应该与此类似:
C:\Windows\System32\Recovery
不存在或ReAgent.xml
丢失,则可能未安装 WinRE。ReAgent.xml
有WinreLocation path=""
或InstallState state="0"
,则 WinRE 可能被禁用。