Automation
使用 Devcon 刪除不存在的硬體?
我正在使用 Windows XP SP3 自動從機器上刪除 USB 列印機。為此,我使用了 Microsoft 的Devcon Utility。
執行命令:
devcon findall *hp*
回報:
USBPRINT\HEWLETT-PACKARDHP_LASERJET_PROFESSIONAL_P1606DN\7&8885729&0&USB001: HP LaserJet Professional P1606dn 1 matching device(s) found.
執行命令:
devcon remove *USBPRINT*
回報:
No devices removed.
我嘗試了硬體 ID 和萬用字元的多種組合,但沒有成功。將設備插入電腦並執行上述刪除命令會刪除硬體。
問題來自我使用 devcon piped 來查找以確定設備是否已插入以便可以自動配置。如果我無法刪除它,即使它沒有插入,我的腳本也會檢測到它。
我已經用多台 USB 列印機和一個 USB 滑鼠對此進行了測試,它們都表現出相同的行為,這讓我相信這是 Devcon 的正常行為。
有解決方法嗎?如何刪除不再連接的硬體條目?
Devcon 確實有效。您只需要確保針對您的作業系統使用正確版本的 devcon。
看看這個連結http://freneticrapport.blogspot.com/2011/05/windows-hiddennot-connected-device.html。
為您的作業系統安裝正確的 devcon 版本:
- 安裝 Windows 驅動程序工具包
- 轉到開始 -> 程序 -> 開發工具包 -> WDK XXXX -> 建構環境 -> Windows$$ Target $$-> 窗戶$$ Target $$免費建構環境,替換$$ Target $$使用您正在建構的適當版本的 Windows。
- 轉到 WDK 安裝目錄中的 src\setup\devcon 文件夾並執行:
build -ceZ
然後,您可以使用以下命令刪除設備:
devcon remove "@PCI\VEN_1000&DEV_0060&SUBSYS_1F0C1028&REV_04\4&10333E29&0&0030"
請注意引號和
@
符號,因為它們是移除隱藏設備所必需的。