
Windows 11编译QMK固件失败一文搞定wmic不是内部或外部命令错误【免费下载链接】qmk_firmwareOpen-source keyboard firmware for Atmel AVR and Arm USB families项目地址: https://gitcode.com/GitHub_Trending/qm/qmk_firmware你在Windows 11上用make编译QMK固件终端弹出wmic 不是内部或外部命令编译直接中断这是Windows 11编译QMK固件最常见的环境问题系统不再自带WMIC组件。本文带你3分钟修好它。快速判断你是不是遇到了这个问题你的现象结论终端提示wmic 不是内部或外部命令也不是可运行的程序或批处理文件WMIC组件缺失Windows 11新版本默认已移除编译还没真正开始就中断或烧录脚本检测不到键盘设备构建流程里的脚本想用 wmic 查询USB/硬件信息你手动输入wmic os get caption也报同样的错确认组件缺失直接进入下方修复路径先说明一点最新QMK的主构建脚本Makefile和builddefs/已经不再直接调用 wmic可在仓库内全文检索验证。如果你还看到这个报错通常来自旧版本QMK、烧录工具或第三方辅助脚本在做硬件检测。修复路径方案一一行命令装回WMIC组件最省事WMIC是Windows的可选功能如果你的系统里还能找到它一条命令即可装回。以管理员身份打开PowerShell开始菜单搜索PowerShell右键选择以管理员身份运行执行dism /online /enable-feature /featurename:WMIC重启后验证是否生效wmic os get caption能输出一行系统名称如 Microsoft Windows 11 专业版说明组件已恢复。⚠️ Windows 11 的多数版本该功能已被彻底移除dism会提示指定的功能未安装。这不是操作错误直接走方案二。方案二用PowerShell等价命令替代最可靠WMIC干的活本质上就是查询硬件信息现代Windows的等价工具是Get-CimInstance。如果你用的是旧版QMK或第三方脚本在本地副本里找到 wmic 调用替换为powershell -Command Get-CimInstance Win32_PnPEntity | Where-Object { $_.Caption -match keyboard } | Select-Object -ExpandProperty Caption如果不想动脚本更稳的做法是升级官方工具链新版qmk_cli已不再依赖WMICpip install -U qmk_cli方案三换官方推荐的构建环境最彻底想一劳永逸避开Windows 11的各种组件坑QMK官方文档推荐在Windows上使用WSL2在WSL的Linux环境里编译没有wmic也没有驱动问题。wsl --install装好后把仓库克隆进WSL按Linux流程正常编译即可git clone https://gitcode.com/GitHub_Trending/qm/qmk_firmware详细步骤见 docs/getting_started_make_guide.md。验证与踩坑确认问题已解决先清掉构建缓存再编译一个示例键盘make clean make planck/rev6:default出现[OK]且.build/目录下生成.hex、.bin、.elf固件文件就是成功了。❌ 直接修改了仓库里的脚本文件。本仓库是只读的请在本地克隆副本中操作改错了可用git checkout -- 文件还原。⚠️ 执行dism后没重启就判定失败。WMIC装回后需要重启才生效。⚠️ 你以为编译失败其实是烧录失败。烧录失败十有八九是USB驱动问题与wmic无关参考 docs/faq_build.md。预防同类问题以后在Windows上编译QMK开工前先做两个自查qmk hello—— 确认命令行工具链可用wmic os get caption—— 确认WMIC在位报错了就放心大胆走WSL路线。另外每次换新Windows环境在本地克隆里执行git pull origin master保持代码最新能避开一大半历史兼容坑。现在打开终端输入wmic os get caption试试——报错了就走方案二3分钟收工。【免费下载链接】qmk_firmwareOpen-source keyboard firmware for Atmel AVR and Arm USB families项目地址: https://gitcode.com/GitHub_Trending/qm/qmk_firmware创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考