萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 電腦基礎知識 >  >> 電腦基本常識

安全移除 USB 後想繼續用?DevCon 批次檔一鍵重新掛載免拔插

點擊「安全移除硬體」弹出 USB 隨身碟後,若又想繼續使用,通常得拔插實體介面。利用 Microsoft 官方命令列工具 DevCon (Device Manager Command Line) 撰寫批次檔,即可在不拔插的情況下重新啟用裝置。

準備工作

  1. 下載 Windows Driver Kit (WDK) 或獨立 DevCon 封裝 (GitHub/各大下載站搜尋 `devcon.exe`)。
  2. 解壓取得對應架構版本:
    `i386\devcon.exe` (32-bit 系統)
    `ia64\devcon.exe` 或 `amd64\devcon.exe` (64-bit 系統,現代通用)
  3. 將 `devcon.exe` 放入固定資料夾 (如 `C:\Tools\DevCon\`)。

取得裝置範例 ID (Device Instance ID)

  1. 裝置管理員 → 通用序列匯流排控制器 → 「USB Root Hub」或「USB 大容量儲存裝置」→ 右鍵「內容」→「詳細資料」→ 屬性選「裝置範例識別碼」。
  2. 複製完整字串,如:
    `USB\ROOT_HUB20\4&1A2797B1&0`

建立一鍵重掛載批次檔

在 `devcon.exe` 同目錄新建 `RemountUSB.bat`:

@echo off
rem 替換為你的裝置範例 ID,保留 @ 和雙引號
set DEV_ID=@"USB\ROOT_HUB20\4&1A2797B1&0"

echo 正在停用 USB 裝置...
devcon disable %DEV_ID%

echo 正在啟用 USB 裝置...
devcon enable %DEV_ID%

echo 完成!請檢查「這台電腦」是否出現磁碟機代號。
pause

關鍵語法細節

  • @ 符號:指定使用裝置範例 ID 比對,而非硬體 ID。
  • 雙引號:ID 含特殊字元 (&、空格) 必須包裹。
  • 通配符:`devcon disable @"USB\ROOT_HUB*"` 可一次停用所有 USB Root Hub (含鍵鼠,慎用)。
  • 查詢裝置:`devcon find *` 列出所有裝置,`devcon status @` 查狀態。

進階:自動偵測隨身碟裝置 ID

@echo off
for /f "tokens=*" %%a in ('devcon find USB\VID_*^&PID_*') do (
    set DEV_ID=%%a
    goto :DO_REMOUNT
)
:DO_REMOUNT
if defined DEV_ID (
    devcon disable @%DEV_ID%
    devcon enable @%DEV_ID%
) else (
    echo 找不到 USB 大容量儲存裝置
)
pause

適用版本

Windows XP / Server 2003 / Vista / 7 / 8 / 8.1 / 10 / 11 / Server 2008-2022 (需對應架構 devcon.exe)。

copyright © 萬盛學電腦網 all rights reserved