Office 部署工具(ODT)完全指南
Office Deployment Tool(ODT)是微软官方命令行部署工具,用来下载和部署 Microsoft 365 应用版、Office LTSC 2024 / 2021 以及 Project、Visio 的 Click-to-Run 版本。本文讲清它是什么、configuration.xml 怎么写、三条命令怎么用,以及与 ospp.vbs 的分工。
一、ODT 是什么
ODT 不是一个图形化安装器,而是一个命令行工具包:运行下载回来的 officedeploymenttool.exe 后,它会释放出两个文件,之后所有部署动作都通过这两个文件完成。它是企业里给上百台机器统一安装 Office 的标准做法,个人用户也可以用,但零售版 Office 通常直接用微软账户的在线安装向导更省事。
officedeploymenttool.exe二、两个文件:setup.exe 与 configuration.xml
双击运行 officedeploymenttool.exe 后会释放两个文件,放在同一个文件夹里:
| 文件 | 角色 | 说明 |
|---|---|---|
setup.exe | 执行器 | 真正干活的命令行程序,读取 configuration.xml 并执行下载 / 安装 / 卸载 |
configuration.xml | 配置文件 | 描述「装什么、装多大、装到哪、要不要界面、怎么更新」的 XML,微软附带的是示例文件,必须按需修改 |
建议为每套部署方案单独建一个文件夹,例如 D:\OfficeLTSC2024\,把 setup.exe 与自己的 configuration.xml 放一起,避免下载源混在一起。
三、configuration.xml 完整结构讲解
一个完整的 configuration.xml 由若干个顶层元素组成,下面是骨架(复制到 XML 文件后按需增删):
<!-- 根元素,所有配置都包在 Configuration 里 -->
<Configuration>
<!-- 装什么:产品 ID、语言、位宽、更新通道、安装源 -->
<Add OfficeClientEdition="64" Channel="Perpetual2024Vol" SourcePath="D:\OfficeSource">
<Product ID="ProPlus2024Volume">
<Language ID="zh-CN" />
<Language ID="en-US" />
</Product>
<ExcludeApp ID="OneDrive" />
</Add>
<!-- 怎么装:是否显示界面、是否自动接受许可条款 -->
<Display Level="Full" AcceptEULA="TRUE" />
<!-- 额外行为:安装后自动激活、共享计算机许可等 -->
<Property Name="AUTOACTIVATE" Value="1" />
<!-- 更新策略 -->
<Updates Enabled="TRUE" Channel="Current" />
<!-- 清理旧的 MSI 版 Office(可选) -->
<RemoveMSI />
</Configuration>
3.1 Add 与 Product ID:装哪个产品
Add 元素是核心,指定要安装的产品、语言、位宽。Product ID 必须是微软文档中的标准 ID,常见取值:
| Product ID | 对应产品 | 类型 |
|---|---|---|
ProPlus2024Volume | Office LTSC 专业增强版 2024 | 批量版 |
Standard2024Volume | Office LTSC 标准版 2024 | 批量版 |
ProPlus2021Volume / Standard2021Volume | Office LTSC 专业增强版 / 标准版 2021 | 批量版 |
O365ProPlusRetail | Microsoft 365 企业应用版 | 订阅 |
O365BusinessRetail | Microsoft 365 商业应用版 | 订阅 |
ProjectPro2024Volume / ProjectStd2024Volume | Project 专业版 / 标准版 2024 | 批量版 |
VisioPro2024Volume / VisioStd2024Volume | Visio LTSC 专业版 / 标准版 2024 | 批量版 |
ProjectPro2021Volume / ProjectStd2021Volume | Project 专业版 / 标准版 2021 | 批量版 |
VisioPro2021Volume / VisioStd2021Volume | Visio LTSC 专业版 / 标准版 2021 | 批量版 |
HomeStudent2024Retail 等 | Office 家庭和学生版等买断零售版 | 零售 |
一个 Add 里可以写多个 Product(例如同时装 Office 与 Visio)。产品 ID 会随版本增减,实际可用的 ID 以微软文档 configuration.xml 选项参考 为准。
3.2 Language:装哪些语言
- 用
<Language ID="zh-CN" />指定显示语言与校对工具语言,可以写多个(如中英双语) - 不写
Language时,默认跟随操作系统语言 - 语言包在
/download阶段一并下载;装完后想加语言,用/configure加载含新语言的配置即可(见第六节)
3.3 Display Level:静默安装的关键
| Level | 界面表现 | 适用场景 |
|---|---|---|
Full | 显示完整安装界面与进度,用户能看到正在装什么 | 单机安装、需要用户知情或自助的场景 |
None | 完全静默:无窗口、无进度、无提示,后台装完即结束 | 批量部署、无人值守、随镜像分发 |
AcceptEULA="TRUE" 表示自动接受最终用户许可条款,静默安装必须加,否则可能中断等待确认。
3.4 ExcludeApp:精简安装,移除不需要的应用
在 Product 内用 <ExcludeApp ID="..." /> 把套件里的某个应用排除掉,常见 ID:
| ExcludeApp ID | 移除的应用 | 备注 |
|---|---|---|
OneDrive | OneDrive 同步客户端 | 只移除随 Office 安装的同步客户端,不影响系统里已有的 OneDrive |
OneNote | OneNote 桌面版 | 网页版/Windows 10 UWP 版不受影响 |
Outlook | Outlook | 确认单位不用 Outlook 客户端再移除 |
Access | Access 数据库 | 有 Access 应用的部门不要移除 |
Publisher | Publisher | 仅当所装产品包含 Publisher 时有效 |
Lync | Skype for Business | 旧版统一通信客户端 |
Groove | OneDrive for Business 旧版同步客户端 | 已迁移到新同步客户端的环境可移除 |
Teams | 旧版 Teams | 新版 Teams 已改为独立安装,不再随 Office 部署,此 ID 对仅含新版场景无意义 |
3.5 Updates Channel:更新通道
| Channel 取值 | 适用产品 | 更新节奏 |
|---|---|---|
Current | Microsoft 365 应用版 | 最新功能通道,更新最快(默认) |
MonthlyEnterprise | Microsoft 365 企业应用版 | 每月企业通道,每月一次、可预测 |
SemiAnnual | Microsoft 365 企业应用版 | 半年企业通道(曾称 Semi-Annual Targeted,部分旧文档写作 Targeted),一年两次功能更新 |
Perpetual2024Vol | Office LTSC 2024 批量版 | 永久通道,只接收安全更新,不带新功能 |
批量版 LTSC 与订阅版可用的通道不同,写错会导致安装报错或更新不符合预期;通道清单以官方文档为准。
3.6 RemoveMSI、Remove 与 SourcePath
<RemoveMSI />:安装 Click-to-Run 版时,按默认策略清理机器上基于 MSI 的旧版 Office(2010 / 2013 / 2016),因为 MSI 版与 Click-to-Run 版不能共存<Remove All="TRUE" />:卸载本机所有 Click-to-Run 产品(卸载配置,见第六节)SourcePath:指定安装源位置。/download下载到哪、/configure从哪装,都由它决定;内网部署通常指向一台文件服务器的共享目录
3.7 Property:安装后的附加行为
| Property | 取值 | 作用 |
|---|---|---|
AUTOACTIVATE | 1 / 0 | 1 = 安装结束后自动尝试激活(MAK / GVLK 需已就位);0 = 不自动激活,事后再用 ospp.vbs 处理 |
SharedComputerLicensing | 1 / 0 | 1 = 启用共享计算机许可(RDS / 多用户远程桌面场景) |
PinIconsToTaskbar | 1 / 0 | 是否把 Office 图标固定到任务栏 |
四、三个完整可复制的 configuration.xml
示例 1:Office LTSC 2024 专业增强版,64 位静默安装
适合企业内网批量部署:无界面、自动接受条款、装完自动尝试激活,安装源指向内网共享。
<Configuration>
<Add OfficeClientEdition="64" Channel="Perpetual2024Vol" SourcePath="\\fileserver\OfficeSource\LTSC2024">
<Product ID="ProPlus2024Volume">
<Language ID="zh-CN" />
</Product>
</Add>
<Display Level="None" AcceptEULA="TRUE" />
<Property Name="AUTOACTIVATE" Value="1" />
</Configuration>
LTSC 只接收安全更新,经永久通道自动完成;如需显式写出更新策略,可加 <Updates Enabled="TRUE" Channel="Perpetual2024Vol" />,以官方文档为准。
示例 2:Microsoft 365 企业应用版,每月企业通道
订阅版部署:安装后由用户登录微软账户完成激活,所以 AUTOACTIVATE 设 0。
<Configuration>
<Add OfficeClientEdition="64" Channel="MonthlyEnterprise">
<Product ID="O365ProPlusRetail">
<Language ID="zh-CN" />
<Language ID="en-US" />
</Product>
</Add>
<Display Level="Full" AcceptEULA="TRUE" />
<Property Name="AUTOACTIVATE" Value="0" />
<Updates Enabled="TRUE" Channel="MonthlyEnterprise" />
</Configuration>
示例 3:只留 Word / Excel / PowerPoint 的精简安装
用 ExcludeApp 把 OneDrive、OneNote、Outlook、Access、Skype for Business 全部排除,只保留三大件,安装体积和后台进程都明显下降。
<Configuration>
<Add OfficeClientEdition="64" Channel="Perpetual2024Vol">
<Product ID="ProPlus2024Volume">
<Language ID="zh-CN" />
<ExcludeApp ID="OneDrive" />
<ExcludeApp ID="OneNote" />
<ExcludeApp ID="Outlook" />
<ExcludeApp ID="Access" />
<ExcludeApp ID="Lync" />
</Product>
</Add>
<Display Level="None" AcceptEULA="TRUE" />
<Property Name="AUTOACTIVATE" Value="1" />
</Configuration>
五、部署命令:下载与安装
setup.exe 的官方参数只有四个,都通过命令行调用(建议管理员身份):
| 命令 | 作用 |
|---|---|
setup.exe /download configuration.xml | 按配置下载安装源到 SourcePath(内网部署先执行这一步,让文件服务器备好源) |
setup.exe /configure configuration.xml | 按配置安装 / 修改 / 卸载 Office(安装时若 SourcePath 已有本地源则不必再联网) |
setup.exe /packager | 图形界面模式。历史上用于生成 App-V 包;微软已停止对 M365 Apps 的 App-V 支持,新版 ODT 中可能不再提供,以你手上的版本为准 |
setup.exe /help | 显示帮助 |
标准两步部署
rem 第 1 步:下载安装源(在内网文件服务器上执行一次)
setup.exe /download configuration.xml
rem 第 2 步:在每台目标机器上执行安装(从 SourcePath 本地源安装)
setup.exe /configure configuration.xml
- 把
setup.exe与改好的configuration.xml放进同一目录 - 在一台机器(或文件服务器)上执行
setup.exe /download configuration.xml,等下载完成 - 确认 SourcePath 指向的目录里已有 Office 安装文件
- 在目标机器上执行
setup.exe /configure configuration.xml,静默安装完成后抽查开始菜单与激活状态
六、修改与卸载已有安装
修改已有安装没有单独的 /modify 参数——微软官方参数只有 /download、/configure、/packager、/help,网上教程里的 /modify 并非官方文档参数。正确做法是:改一份新的 configuration.xml,再用 /configure 执行。
| 需求 | 做法 |
|---|---|
| 增加显示语言(如加英语) | 在 Product 里补一个 <Language ID="en-US" />,再 /configure |
| 移除某个应用(如加装 Outlook) | 删掉对应的 <ExcludeApp ID="Outlook" /> 行,再 /configure |
| 切换更新通道 | 改 Updates Channel 后 /configure;部分通道组合要求先卸载重装,以官方文档为准 |
| 卸载 Office | 用只含 <Remove All="TRUE" /> 的配置执行 /configure,或在「设置 → 应用」里卸载 |
<Configuration>
<Remove All="TRUE" />
<Display Level="None" AcceptEULA="TRUE" />
</Configuration>
<Configuration>
<Add OfficeClientEdition="64" Channel="Perpetual2024Vol">
<Product ID="ProPlus2024Volume">
<Language ID="zh-CN" />
<Language ID="en-US" />
</Product>
</Add>
<Display Level="None" AcceptEULA="TRUE" />
</Configuration>
七、ODT 与 ospp.vbs 的分工
这是最容易搞混的一层:ODT 管部署,ospp.vbs 管激活。两者互不替代。
| 工具 | 负责 | 典型命令 |
|---|---|---|
ODT(setup.exe) | 部署:装什么产品、什么语言、什么位宽、静默还是有界面、更新通道、安装源 | /download、/configure |
| ospp.vbs | 激活:安装 MAK / GVLK、MAK 或 KMS 激活、查看许可证状态、重置许可状态 | /inpkey、/act、/dstatus |
- 典型顺序:ODT 装好 Office LTSC → 用
cscript ospp.vbs /inpkey:<MAK 或 GVLK>装密钥 →/act或/act:KMS激活 →/dstatus确认 - 偷懒做法:configuration.xml 里设
AUTOACTIVATE=1,安装收尾自动执行激活(前提是密钥或 KMS 主机已就位) - Microsoft 365 应用版不经过 ospp.vbs:部署完由用户登录微软账户,许可随账户生效
命令细节见 ospp.vbs 命令速查手册;批量授权概念见 Office LTSC 批量版激活。
八、常见坑
| 坑 | 说明与规避 |
|---|---|
| 64 位与 32 位混装 | 同一台机器不能共存两种位宽的批量版 Office。OfficeClientEdition 必须与已装版本一致,先 cscript ospp.vbs /dstatus 或从安装目录确认位宽再写配置 |
| Level 必须 Full 才能看到界面 | None 是彻底静默:没弹窗不代表失败,看日志;要用户可见就用 Full |
| 下载源缓存路径 | /download 默认把源下到 configuration.xml 所在目录;要统一放到文件服务器就用 SourcePath 指定共享路径。源目录建议单独存放,别和配置混在一起 |
| 日志不知道在哪 | setup.exe 日志在 %temp% 目录;Office Click-to-Run 自身日志在用户目录下的 Office 日志文件夹。批量部署排障第一步就是收集这两个目录 |
| RemoveMSI 与旧版 Office | MSI 版(2010/2013/2016)与 Click-to-Run 不能共存,不处理会直接报错;用 <RemoveMSI /> 让 ODT 自动清理 |
| 切换通道的隐性成本 | 改 Updates Channel 不是改个字符串就行,部分组合要求先卸载再安装,会导致配置与缓存全部重来;部署前定好通道 |
| ExcludeApp 用错对象 | 排除项只对该产品确实包含的应用有效;移除 Outlook 前确认没有依赖 Outlook 配置文件或加载项的业务 |
| AUTOACTIVATE 不等于有授权 | 没有合法 MAK / GVLK + KMS 主机,自动激活必然失败;ODT 不提供任何授权 |
九、常见问题
可以。/download 把安装文件落到本地或网络位置(默认为 configuration.xml 所在目录,可用 SourcePath 指定),之后内网机器用 /configure 从本地源安装,不必每台都连微软服务器,适合批量与离线部署。
ODT 只负责部署,不负责授权。Office LTSC 仍需 MAK 或 KMS,命令在 ospp.vbs;也可在配置里设 AUTOACTIVATE=1 让安装收尾自动尝试激活。Microsoft 365 应用版装完登录微软账户即可。
不可以。同一台机器上不能同时安装两种位宽的批量版 Office,OfficeClientEdition 必须与已安装版本一致,否则直接报错。另外 32 位 Office 加载不了 64 位加载项,位宽选错是批量部署最常见的返工原因。
不一定。None 是完全静默安装,没有窗口和进度,后台装完即结束。判断结果看日志:setup.exe 日志在 %temp%,Click-to-Run 日志在用户目录下的 Office 日志文件夹。批量部署建议保留并抽查日志。
- Microsoft Learn · Office 部署工具概述 · ODT 官方文档
- Microsoft Learn · 部署 Office LTSC 2024 · LTSC 2024 部署指南
- Microsoft Learn · configuration.xml 选项参考 · 配置选项完整说明
- 微软下载中心 · Office Deployment Tool · ODT 官方下载页
延伸阅读
- Office LTSC 2024 / 2021 批量版激活 — MAK 与 KMS 完整命令、GVLK、排障
- ospp.vbs 命令速查手册 — Office 软件保护平台脚本全部常用参数
- Visio / Project 激活 — 独立产品的安装与激活路径
- Microsoft 365 订阅版激活 — 账户登录即激活,不走 ospp.vbs
- 企业批量激活:MAK / KMS / ADBA — Windows 侧批量授权激活机制