news 2026/9/10 15:00:28

解决 tiny11builder 构建失败:“oscdimg.exe not found“ 完整排查与修复指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
解决 tiny11builder 构建失败:“oscdimg.exe not found“ 完整排查与修复指南

解决 tiny11builder 构建失败:"oscdimg.exe not found" 完整排查与修复指南

【免费下载链接】tiny11builderScripts to build a trimmed-down Windows 11 image.项目地址: https://gitcode.com/GitHub_Trending/ti/tiny11builder

用 tiny11builder 构建精简版 Windows 11 镜像时,最常见的翻车点就是最后一步:构建一路正常,走到 "Creating ISO image..." 却提示找不到 oscdimg.exe,直接中止。本文先用一条诊断命令确认你当前处于哪种状态,再给出轻量与完整两条修复路线,每步都能验证,跟着做完即可通过验收、生成可用的 tiny11.iso。

💡 如果还没拿到项目源码,先克隆它:

git clone https://gitcode.com/GitHub_Trending/ti/tiny11builder

完成后目录里应有 tiny11maker.ps1、README.md 等文件,即视为正常。

报错现场:构建卡在最后的 "Creating ISO image..."

构建前半段(复制镜像、挂载、DISM 精简压缩)都正常,只在打 ISO 这步停下。典型的日志长这样:

Creating ISO image... ADK folder not found. Will be using bundled oscdimg.exe. Downloading oscdimg.exe... Invoke-WebRequest : 无法连接到远程服务器。 Failed to download oscdimg.exe.

关键就在最后两行:ADK 没找到,回退下载又失败,脚本只能中止退出。

如果你再新开一个窗口想手动运行 oscdimg 试试,还会看到另一种报错:

PS C:\tiny11builder> oscdimg.exe -m -o -u2 .\src .\test.iso oscdimg.exe : 无法将"oscdimg.exe"项识别为 cmdlet、函数、脚本文件或可运行程序的名称。

这是因为 oscdimg.exe 既不在当前目录、也不在 PATH 里——它随 Windows ADK 提供,普通系统默认没有它。

oscdimg.exe 在构建链路里负责哪一步

排查前先花 30 秒看懂这个工具的位置,后面所有结论都建立在这三点上:

  • 它是最后一环,也是唯一的外部可执行程序。拆镜像、精简、压缩全靠系统自带的 DISM;只有 oscdimg 负责把整个目录封装成 ISO 9660/UDF 光盘镜像,并同时写入 BIOS 与 UEFI 双引导扇区,所以它无法被 DISM 替代。
  • 脚本找工具的顺序是写死的:先查 ADK 默认安装目录(路径里带 CPU 架构子文件夹),再查脚本同目录下的oscdimg.exe,都没有才尝试从微软官方源下载。
  • 注意收尾动作:构建成功后,脚本会自动删掉本地下载的 oscdimg.exe。也就是说没有 ADK 的机器,每次构建都要重新准备工具。

先跑这条诊断命令,确认你现在处于哪种状态

别急着装东西。下面这条命令模拟了脚本查找工具的完整逻辑,一次就能告诉你"你在哪种状态":

# 把第一行改成 tiny11maker.ps1 实际所在的目录 $scriptDir = "C:\tiny11builder" $adkDir = "C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\$Env:PROCESSOR_ARCHITECTURE\Oscdimg" "① ADK默认目录: " + (Test-Path "$adkDir\oscdimg.exe") "② 脚本目录单放: " + (Test-Path "$scriptDir\oscdimg.exe") "③ 架构标识: " + $Env:PROCESSOR_ARCHITECTURE

结果只有三种读法:

  • ① 为 True → 工具已在位。构建仍报错,多半撞上了"路径没对上"的坑,直接看文末速查表。
  • ① 为 False、② 为 True → 轻量路线已满足,直接跳到验收关。
  • 两项都为 False → 这就是你报错的根因:没有任何可用工具,自动下载又失败了。选下面一条路线修复。

💡 构建时脚本还会在脚本目录生成tiny11_时间戳.log转录文件,对照上面"报错现场"的日志逐行看,定位更快。

路线 A(轻量):不装 ADK,给脚本目录备一个 oscdimg.exe

适合一次性构建、虚拟机、离线机器,一共 2 步。

第 1 步:把 oscdimg.exe 放进 tiny11maker.ps1 所在目录。获取方式二选一:

  • 能访问微软官方地址的机器:不用手动做,脚本构建时会自动下载到脚本目录;
  • 离线或网络不稳的机器:从别的机器 ADK 目录里拷一份现成的 oscdimg.exe 放到脚本目录。

第 2 步:验证文件确实就位(路径按实际改):

Test-Path "C:\tiny11builder\oscdimg.exe"

成功标志:输出True;重新构建时日志会打印 "oscdimg.exe already exists locally."(自动下载场景则是 "oscdimg.exe downloaded successfully.")。

路线 B(完整):安装 ADK 部署工具,让脚本自动发现

适合经常做镜像的机器,一共 2 步。

第 1 步:安装 Windows ADK,用 winget 一条命令最省事:

winget install --id Microsoft.Windows.Assessment-Deployment-Kit --accept-source-agreements --accept-package-agreements

⚠️ 如果你改用 ADK 安装程序手动装,组件列表里必须勾选 "Deployment Tools"——只装 SDK 是不会生成 Oscdimg 文件夹的。装完直接进入第 2 步验证。

第 2 步:重跑上面"诊断命令"那一节里的命令,确认状态翻转。

成功标志:① ADK默认目录 的输出由 False 变成 True,此后每次构建脚本都会自动用它,无需再准备工具。

两条路线怎么选:一张表对比

对比维度路线 A:单放工具路线 B:安装 ADK
一次性成本放/下一个百 KB 级文件安装数 GB 级工具链
权限要求普通用户即可需要管理员
每次构建成本要重新下载或重放(收尾会删)零,自动发现
网络依赖需要(除非已有本地副本)装完即无
附带能力ADK 部署工具链可留作他用
适合人群一次性、临时、离线环境长期镜像开发

按场景给一句话推荐

  • 长期开发环境:选路线 B——脚本自动发现,每次构建零准备,ADK 工具链还能复用到其他部署工作。
  • 临时或一次性构建:选路线 A——免安装,脚本自动下载、自动清理,用完不留痕迹。

验收关:先最小验证,再跑完整构建

第 1 步,最小验证——先单独跑一下 oscdimg,确认工具本身可用(路径按你的实际位置改):

& "C:\tiny11builder\oscdimg.exe"

成功标志:控制台打印出 oscdimg 的 Usage 用法说明,说明工具没问题;若仍报"无法识别",则是路径写错了。

第 2 步,完整构建——以管理员身份打开 PowerShell 5.1(非管理员运行时脚本会自动提权重开窗口),执行:

Set-ExecutionPolicy Bypass -Scope Process .\tiny11maker.ps1 -ISO E -SCRATCH D

其中E是已挂载的 Windows 11 ISO 盘符(只填字母、不带冒号),D是暂存盘,省略时默认用脚本所在目录。

✅ 成功标志:脚本目录出现tiny11.iso,大小通常在 3~5GB,日志末尾打印 "Creation completed!" 即构建通过。

高频坑速查(现象 → 解法)

  1. 现象:明明装了 ADK,日志仍显示 "ADK folder not found."解法:脚本只认默认安装路径加架构子文件夹;ADK 装到了自定义目录、或漏勾 "Deployment Tools" 组件都会被错过 → 重装回默认路径并勾选组件,或直接走路线 A。
  2. 现象:第一次构建成功,第二次构建突然失败。解法:构建收尾会删掉本地 oscdimg.exe,第二次启动还要从远程源补拉 autounattend.xml,离线机器会直接中止 → 离线环境构建前把这两个文件备份好,或装上 ADK 一劳永逸。
  3. 现象:手动敲oscdimg.exe提示"不是内部或外部命令"。解法:它不在 PATH 里,脚本也只在两个固定位置(ADK 默认目录、脚本目录)找工具 → 把文件放到正确位置,再用完整路径验证。
  4. 现象:下载环节超时,重试依旧失败。解法:代理或防火墙拦截所致 → 手动放置工具改走路线 A 的离线做法,或先给 PowerShell 配置好系统代理再重试。

【免费下载链接】tiny11builderScripts to build a trimmed-down Windows 11 image.项目地址: https://gitcode.com/GitHub_Trending/ti/tiny11builder

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/10 14:58:38

2026年企业级PHP后台管理系统技术选型与实践

1. 项目概述:2026年企业级PHP后台管理系统的技术选型2026年的企业级后台管理系统开发,早已不是简单的CRUD套模板就能应付的场景。作为经历过多个大型后台系统从零搭建到落地的老鸟,我深刻体会到:在前后端分离架构成为标配的今天&a…

作者头像 李华
网站建设 2026/9/10 14:58:31

国际B2B品牌定位与角色模型构建实战指南

1. 国际B2B品牌定位的核心挑战 做国际B2B品牌定位就像在陌生的海域航行,没有精准的导航系统很容易迷失方向。我服务过数十家出海企业,发现他们最常犯的错误就是直接套用国内经验——结果往往水土不服。去年有个做工业传感器的客户,在国内市场…

作者头像 李华
网站建设 2026/9/10 14:57:38

混合型谐波抑制系统设计与Simulink仿真实践

1. 项目背景与核心需求在电力电子系统设计中,谐波抑制一直是工程师们面临的棘手问题。我最近完成了一个混合型谐波抑制系统的仿真项目,结合了无源电力滤波器(PPF)和有源电力滤波器(APF)的优势,在…

作者头像 李华