ARTICLE · 1337988
SCCM-22:SCCM 部署 WPS 实战:解决用户目录安装、多用户识别与静默卸载(附脚本)!
承接上篇
前两篇(SCCM-20 、SCCM-21), 我们用微信(EXE)搞定了常规的强制安装和平滑升级。但在企业里,总有一些“不走寻常路”的软件。
比如今天的主角——WPS Office。它默认安装在当前用户的 AppData 目录里,而不是 Program Files。如果一台电脑有多个员工轮流登录,普通文件夹检测会立刻失效。甚至,它的静默安装和卸载,都需要特定的参数和 PowerShell 脚本配合。
这一篇,我们挑战 SCCM 里的“天花板”难度:用自定义脚本检测 WPS,确保多用户环境下依然能精准识别。
本篇目标
掌握 WPS 的特殊静默安装参数,学会使用 PowerShell 脚本编写部署类型检测规则,并解决多用户环境下检测路径动态变化的难题。
前置条件:目录结构与安装包
按照老规矩,建立版本隔离目录:
\\CM01.szkj.com\Sources\Apps\WPS\v12.1.0.17133将 WPS_Setup_17133.exe放入该目录。
操作步骤:创建并发布 WPS 应用(同微信一样就不再重复截图)
步骤一:创建应用程序基础信息
进入 应用程序,点击 创建应用程序 -> 手动指定应用程序信息。 填入名称: WPS_12.1.0.17133,版本:12.1.0.17133。部署类型选 脚本安装程序。 
步骤二:配置安装与卸载命令(核心参数)
在“内容”页面:
内容位置: \\CM01.szkj.com\Sources\Apps\WPS\v12.1.0.17133安装程序: "WPS_Setup_17133.exe" /s -agreelicense(解释:/s是静默安装,-agreelicense是自动同意许可协议,防止安装卡在许可界面。)卸载程序: powershell.exe -ExecutionPolicy Bypass -Command "Stop-Process -Name 'wps','et','wpp','ksolaunch','wpscloudsvr' -Force -ErrorAction SilentlyContinue; Start-Sleep -Seconds 3; $u = (Get-CimInstance Win32_Process -Filter \"Name = 'explorer.exe'\" | Select-Object -First 1); $user = if($u){(Invoke-CimMethod -InputObject $u -MethodName GetOwner).User} else {$env:USERNAME}; $path = \"C:\Users\$user\AppData\Local\Kingsoft\WPS Office\"; if(Test-Path $path){ $exe = (Get-ChildItem $path -Filter uninst.exe -Recurse -ErrorAction SilentlyContinue | Select-Object -First 1).FullName; if($exe){ Start-Process -FilePath $exe -ArgumentList '/s' -Wait; exit 0 } }; exit 0"(解释:强杀进程并动态抓取当前用户卸载路径,-ExecutionPolicy Bypass绕过限制。)
步骤三:配置检测方法(核心大招:自定义脚本)
在“检测方法”页面,不要选“文件系统”,选择“使用自定义脚本检测此部署类型的状态”。
将以下 PowerShell 脚本贴入框中(保留你的原逻辑,仅做排版适配):



步骤四:部署
右键应用,选择 部署。 集合选测试集合,部署目的选“可用”。 一路下一步完成。
客户端验证
在客户端刷新策略。 打开软件中心,点击安装 WPS。 
装完后,软件中心会显示“已安装”。 

多用户测试:注销当前用户,换另一个域用户登录,刷新策略后,SCCM 依然能通过脚本准确抓取到该用户的 AppData 路径,判断是否已安装。(我直接换另一个电脑和账户测试可以正常) 
常见报错与实战避坑
1. 脚本执行失败或报错 0x87D00327
-ExecutionPolicy Bypass;SCCM 客户端设置里将“PowerShell 执行策略”设为“绕过(Bypass)”。
2. 多用户切换后,检测显示未安装
$env:USERNAME 兜底逻辑在 SYSTEM 环境下可能抓不到当前登录者。explorer.exe 的逻辑生效,它是抓取当前“登录桌面用户”最准的锚点。3. 安装命令执行后一直没反应
-agreelicense 参数,安装程序静默卡在后台等待用户点同意。下篇预告
WPS 这个硬骨头啃下来后,你对脚本检测和用户目录已经了如指掌。如果你的公司有 500 台电脑,想先推给 50 台测试,下周再推给全公司,这种“灰度发布”怎么实现?下一篇 分阶段部署(Phased Deployments)实战,我们将教你像“放水”一样,安全地进行大规模推送!
写在最后
👍 支持一下:如果这篇文章对你有帮助,点个【在看💖】就行,让更多运维兄弟少踩坑。
📌 系列合集:点公众号服务菜单「实战合集」,一站直达系列干货。
[虚拟化与存储] —从装ESXi到搭高可用,存储备份全覆盖
[日志中心实战] — 从0到1搭建企业日志审计平台
[系统部署与自动化] — WDS+MDT批量部署实战
[SCCM企业级运维实战]— 终端管理全生命周期落地
👋 感兴趣的关注「LiGongIT」别错过,下篇见!
我是李工,专注 ESXi / vCenter / 存储 / 网络 / 日志审计 / Windows 运维 等中小企业IT实战,关注我,一起少走弯路。















































































