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

如何在Intune中运行PS1脚本?Win32 App部署失败求助

解决Intune Win32应用部署注册表修改脚本失败的问题

核心结论

完全可以将修改注册表的PowerShell脚本作为Win32应用部署到Intune,你的整体思路没问题,安装失败基本是脚本权限、打包配置或检测规则的细节出了问题。

排查与修复步骤

1. 脚本权限与路径适配

  • Intune部署Win32应用默认以系统上下文运行,要对应好注册表路径:
    • 若修改当前用户注册表(HKCU),需映射到目标用户的注册表 hive,示例代码:
      $userSID = (Get-CimInstance Win32_UserAccount -Filter "Name='$($env:USERNAME)'").SID
      reg load HKU\TempUser "C:\Users\$env:USERNAME\NTUSER.DAT"
      reg add HKU\TempUser\Software\YourTargetPath /v YourValueName /t REG_SZ /d "NewValue" /f
      reg unload HKU\TempUser
      
    • 若修改系统注册表(HKLM),确保脚本添加-Force参数跳过确认,且无交互式操作。
  • 脚本开头添加执行策略绕过(仅适配部署场景):
    Set-ExecutionPolicy Bypass -Scope Process -Force
    

2. 打包与安装命令配置

  • 用Win32 Content Prep Tool打包时,直接指定PowerShell安装命令,不要通过CMD间接调用:
    • 安装命令:powershell.exe -ExecutionPolicy Bypass -File .\YourScriptName.ps1
  • 打包时加-l参数生成日志,方便后续排查:
    IntuneWinAppUtil.exe -c "C:\YourScriptFolder" -s "YourScriptName.ps1" -o "C:\OutputFolder" -l
    

3. 检测规则精准匹配

  • 注册表检测规则要和脚本修改的内容完全一致:
    • 比如脚本修改HKLM\Software\YourApp\Config下的Status值为Enabled,检测规则需设置:
      • 注册表路径:HKLM\Software\YourApp\Config
      • 值名称:Status
      • 检测方法:字符串匹配,目标值为Enabled
  • 注意32位/64位注册表重定向:如果脚本针对64位系统,检测规则要勾选64位注册表选项。

4. 日志定位问题

  • 查看Intune部署日志:C:\ProgramData\Microsoft\IntuneManagementExtension\Logs\IntuneManagementExtension.log
  • 搜索脚本名称或Exit Code关键词,直接定位失败原因(比如权限不足、路径错误、脚本语法报错)

内容的提问来源于stack exchange,提问作者Oğuz Gecir

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 23:52:32