DISM 是一个用于服务 Windows 映像(安装文件)的命令行工具,它的主要用途包括:

- 准备和修改 Windows 安装镜像:添加或删除驱动程序、语言包、Windows 功能等。
- 修复 Windows 系统:这是它最广为人知的用途之一,可以修复损坏的系统文件、修复系统映像、修复系统组件存储等。
- 捕获和应用映像:可以创建当前系统的备份映像,或者将一个已配置好的系统映像应用到多台电脑上。
核心用途与常见场景
在深入了解命令之前,先理解 DISM 的核心价值:
-
SFC (系统文件检查器) 的“升级版”或“搭档”:
- 当你运行
sfc /scannow发现无法修复某些损坏的系统文件时,很可能是因为系统映像本身已经损坏,这时就需要先使用 DISM 来修复系统映像,然后再运行 SFC。 - 简单比喻:SFC 像是检查你书架上的每一本书(系统文件)是否完好,DISM 则像是检查整个图书馆的蓝图(系统映像)是否正确,并修复蓝图。
- 当你运行
-
自定义 Windows 安装:
IT 管理员和企业用户经常使用 DISM 来创建一个包含所有必要驱动、软件和语言包的“黄金镜像”,之后,他们可以用这个镜像来部署成百上千台电脑,无需手动配置。
(图片来源网络,侵删) -
管理 Windows 功能和组件:
你可以使用 DISM 来添加或删除一些在“控制面板 -> 程序 -> 启用或关闭 Windows 功能”中无法直接管理的功能。
基本语法和常用命令
DISM 命令必须在 管理员权限 的命令提示符 (CMD) 或 PowerShell 窗口中运行。
基本语法:
DISM.exe /<选项> /<参数>

修复系统映像 (最常用)
这是解决系统文件问题的标准流程。
步骤 1:检查并修复系统映像源
你需要一个健康的 Windows 安装文件作为“修复源”,这个源可以是:
- Windows Update:Windows 会自动从微软服务器下载所需的文件。
- 本地安装源:如果你有 Windows 的 ISO 文件或 U 盘安装盘,可以使用它。
- 自定义路径:指向一个包含 Windows 源文件的文件夹。
命令示例:
使用 Windows Update 作为源 (最简单) 这个命令会自动连接到 Windows Update 来查找并修复损坏的映像文件。
DISM /Online /Cleanup-Image /RestoreHealth
/Online:表示操作正在运行的系统。/Cleanup-Image:指定对系统映像执行清理操作。/RestoreHealth:核心参数,用于修复系统映像。
使用本地 ISO 文件或 U 盘作为源 (推荐,更可靠) 如果你的系统无法连接到 Windows Update,或者你想确保使用与当前系统版本完全一致的文件,这个方法是最好的。
你需要知道你的 Windows 版本(Windows 10 22H2 或 Windows 11 23H2),并下载对应的 ISO 文件。
命令:
假设你的 ISO 文件挂载后盘符为 F:。
DISM /Online /Cleanup-Image /RestoreHealth /Source:F:\sources\install.wim
/Source:F:\sources\install.wim:指定了源文件的位置。install.wim是包含 Windows 安装文件的镜像文件,如果你的 ISO 里是install.esd,就使用install.esd。
使用自定义文件夹作为源
如果你已经将 ISO 里的 sources 文件夹解压到了某个位置(D:\WinSource),可以使用以下命令:
DISM /Online /Cleanup-Image /RestoreHealth /Source:D:\WinSource
步骤 2:运行 SFC 扫描
在 DISM 成功修复映像后,必须 运行 SFC 来替换掉被损坏的文件。
sfc /scannow
管理 Windows 功能和组件
列出所有可用的功能
DISM /Online /Get-Features
启用一个功能 启用“.NET Framework 3.5”(它依赖于 .NET 2.0 和 3.0),系统会自动处理依赖关系。
DISM /Online /Enable-Feature /FeatureName:NetFx3
禁用一个功能 禁用 Telnet 客户端。
DISM /Online /Disable-Feature /FeatureName:TelnetClient
管理语言包 (多语言)
列出系统中已安装和可用的语言包
DISM /Online /Get-Intl
或者
DISM /Online /Get-ImageInfo /Index:1
添加语言包
首先需要下载 .cab 格式的语言包文件,然后使用以下命令添加。
DISM /Online /Add-Package /PackagePath:C:\path\to\your\language.cab
设置系统显示语言 添加语言包后,需要设置它为系统默认语言。
DISM /Online /Set-Intl /InputLocale:en-US /SystemLocale:en-US /UserLocale:en-US /UILangauge:en-US
- 将
en-US替换为你想要的语言代码,zh-CN。
管理驱动程序
添加驱动程序 为系统添加一个 INF 格式的驱动程序。
DISM /Online /Add-Driver /Driver:C:\path\to\driver\driver.inf
扫描并添加指定文件夹下的所有驱动程序 非常实用的命令,用于批量安装驱动。
DISM /Online /Add-Driver /Driver:C:\path\to\driver_folder /Recurse
/Recurse参数会递归查找指定文件夹及其子文件夹中的所有 INF 文件。
捕获和应用映像 (高级用户/IT 管理员)
捕获当前系统为映像
这类似于创建一个系统备份,需要用到 Windows PE (Windows 预安装环境) 启动盘。
# 在 Windows PE 环境中运行 DISM /Capture-Image /ImageFile:D:\images\mybackup.wim /CaptureDir:C:\ /Name:"My Windows 11 Image"
应用映像到新系统 将一个已经准备好的映像部署到一台新电脑上。
# 在 Windows PE 环境中运行 DISM /Apply-Image /ImageFile:D:\images\mybackup.wim /Index:1 /ApplyDir:C:\
完整命令列表参考
要查看 DISM 的所有可用选项和参数,可以使用以下命令:
DISM /?
或者查看特定命令的帮助,
DISM /Online /? DISM /Image /?
总结与最佳实践
| 命令 | 功能 | 常见用途 |
|---|---|---|
DISM /Online /Cleanup-Image /RestoreHealth |
修复系统映像 | 解决 sfc /scannow 无法修复的问题。 |
DISM /Online /Enable-Feature /FeatureName:... |
启用 Windows 功能 | 添加如 .NET Framework 3.5、Telnet 等。 |
DISM /Online /Disable-Feature /FeatureName:... |
禁用 Windows 功能 | 移除不用的功能以节省空间或提高安全性。 |
DISM /Online /Add-Driver /Driver:... |
添加驱动程序 | 为硬件安装官方或手动下载的驱动。 |
DISM /Get-Features |
列出所有功能 | 查看可以安装或卸载的功能列表。 |
DISM /Get-Intl |
列出语言信息 | 管理系统语言和多语言支持。 |
最佳实践流程:
-
遇到系统文件损坏问题:
- 以管理员身份打开 CMD 或 PowerShell。
- 运行
DISM /Online /Cleanup-Image /RestoreHealth,如果可能,优先使用本地 ISO 作为源。 - 等待 DISM 完成(可能需要一些时间)。
- 运行
sfc /scannow。 - 重启电脑。
-
需要自定义系统:
- 在一台干净的虚拟机或物理机上安装好基础系统。
- 使用 DISM 命令添加驱动、功能、语言包等。
- 使用
sysprep(系统准备工具) 清理并通用化系统。 - 使用 DISM 捕获该系统的映像,用于后续部署。
掌握 DISM 命令行,对于解决顽固的系统问题和进行高效的系统管理非常有帮助。
