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

Windows Server 2025 Core无人值守安装中Defender命令执行失败问题

问题分析与解决方案

错误原因

错误代码0x800106ba对应RPC服务器不可用,出现该问题的核心逻辑:

  • <FirstLogonCommands>中的命令会在用户首次登录的极早期阶段执行,此时Windows Defender的核心服务WinDefend尚未完成初始化或完全启动,导致Set-MpPreference cmdlet无法通过RPC调用连接到Defender服务。
  • 手动执行时系统已完成全量启动流程,WinDefend服务处于稳定运行状态,因此命令可正常执行。

解决方法

方法1:给命令添加延迟执行

通过Start-Sleep等待服务启动完成后再执行命令,修改后的命令如下:

powershell -noexit "Start-Sleep -Seconds 30; Set-MpPreference -DisableRealtimeMonitoring `$true"

注意:unattend.xml中需将$true转义为`$true,避免XML解析时丢失变量符号。

方法2:循环检查服务状态后执行

更可靠的方式是等待WinDefend服务进入运行状态后再执行命令:

powershell -noexit "while ((Get-Service WinDefend).Status -ne 'Running') { Start-Sleep -Seconds 5 }; Set-MpPreference -DisableRealtimeMonitoring `$true"

方法3:改用SetupComplete.cmd执行

SetupComplete.cmd会在系统安装完成、首次登录前执行,此时服务初始化更充分:

  1. 在安装镜像的\Windows\Setup\Scripts\目录下创建SetupComplete.cmd文件
  2. 文件内添加命令:
powershell -Command "Set-MpPreference -DisableRealtimeMonitoring $true"

方法4:通过注册表直接配置

无需依赖PowerShell,直接在unattend.xml中添加注册表设置(需嵌套在Microsoft-Windows-Shell-Setup组件的<Component>节点内):

<RegistrySettings>
    <RegistryKey>
        <KeyName>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Real-Time Protection</KeyName>
        <Value>
            <ValueName>DisableRealtimeMonitoring</ValueName>
            <Type>REG_DWORD</Type>
            <ValueData>1</ValueData>
        </Value>
    </RegistryKey>
</RegistrySettings>

备注:修改注册表后需重启系统生效,可结合SetupComplete.cmd添加重启命令,或在unattend.xml中配置自动重启逻辑。

内容的提问来源于stack exchange,提问作者sirzento

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 11:27:39