You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

寻求检测Windows恢复环境(WinRE)启用状态的注册表项及Intune需求评估脚本故障解决方案

寻求检测Windows恢复环境(WinRE)启用状态的注册表项及Intune需求评估脚本故障解决方案

我来帮你解决这两个问题——先讲检测WinRE状态的注册表项,再修复你Intune需求脚本的问题:


一、检测WinRE启用状态的注册表项

你可以直接通过注册表键值来判断WinRE的启用状态,对应的注册表信息如下:

  • 注册表路径:HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\RecoveryEnvironment
  • 键名:Enabled,类型为DWORD
    • 值为1:WinRE已启用
    • 值为0:WinRE已禁用

这个键值和reagentc /info的输出完全同步,你也可以用PowerShell快速读取它:

$winreStatus = Get-ItemPropertyValue -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\RecoveryEnvironment' -Name Enabled -ErrorAction SilentlyContinue
if ($winreStatus -eq 1) {
    Write-Host "WinRE 已启用"
} else {
    Write-Host "WinRE 未启用"
}

二、修复Intune需求评估脚本的问题

你的脚本核心问题是退出码逻辑不符合Intune的要求:Intune需求脚本的规则是:

  • exit 0:表示满足需求,允许继续部署应用
  • exit 1:表示不满足需求,会阻止部署

而你原来的脚本不管WinRE是否启用都返回exit 0,这就导致Intune无法正确判断是否跳过部署。下面是修改后的正确脚本:

<#
.SYNOPSIS
检测WinRE是否未启用(用于Intune需求校验)

.DESCRIPTION
通过PowerShell验证WinRE状态,仅当WinRE未启用时返回exit 0(满足需求)
.NOTES
在Intune中使用时,请勾选"以管理员身份运行脚本"和"在64位PowerShell中运行"
#>

try {
    $reagentcOutput = reagentc /info

    # 检查WinRE是否已启用
    if ($reagentcOutput -match "Enabled") {
        # WinRE已启用,不满足需求,返回exit 1
        Write-Output "WinRE已启用 - 不满足部署需求"
        exit 1
    } else {
        # WinRE未启用,满足需求,返回exit 0
        Write-Output "WinRE未启用 - 满足部署需求"
        exit 0
    }
}
catch {
    Write-Host "检查WinRE状态时发生错误:"
    Write-Host "Reagentc输出内容:$reagentcOutput"
    Write-Host "错误所在行:$($_.InvocationInfo.ScriptLineNumber)"
    Write-Host "错误信息:$($_.Exception.Message)"
    Write-Host "堆栈跟踪:$($_.Exception.StackTrace)"
    # 错误场景下默认判定为不满足需求,可根据实际情况调整
    exit 1
}

关键修改说明:

  1. 调整了退出逻辑:WinRE已启用时返回exit 1,告知Intune跳过部署;未启用时返回exit 0,允许部署
  2. 错误场景统一返回exit 1,避免因脚本报错导致误判
  3. 补充了更清晰的输出日志,方便在Intune控制台排查问题

额外注意事项:

  • 在Intune配置脚本时,必须勾选以管理员身份运行(reagentc命令需要管理员权限)
  • 建议勾选在64位PowerShell中运行,避免32位环境下的注册表重定向问题
  • 本地测试时,可以运行脚本后执行$LASTEXITCODE查看退出码,验证逻辑是否正确

备注:内容来源于stack exchange,提问作者David Shader

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 15:58:12