0

从命令外壳 (cmd.exe) Win10 中,以下调用是正确的:

.\devcon.exe disable "USB\VID_0547&PID_1002&REV_0000"

但是如果我从 powershell 做同样的事情,我会得到结果

No matching devices found.

与此相同:

$retDevice = Get-WmiObject Win32_PNPEntity | select PnpDeviceID | where {$_.pnpdeviceid -like "USB\VID_0547&*"}
$callparam = $(" disable"  +" " + $retDevice.pnpdeviceid.ToString()) + """"
.\devcon.exe  $callparam

如果我查看带有以下内容的字符串,一切似乎都是正确的。

$callparam | Out-Default
out -> disable USB\VID_0547&PID_1002\5&22AA7556&0&2"
4

1 回答 1

0

改用 start-Process :

Start-Process -FilePath $PathToDevcon -ArgumentList @('enable', '"USB\VID_0547&PID_1002&REV_0000"') -WindowStyle Hidden -Wait 

WindowStyle 和 wait 当然是可选的

于 2018-01-19T12:17:21.743 回答