台灣最大程式設計社群網站
線上人數
1130
 
會員總數:242249
討論主題:187341
歡迎您免費加入會員
討論區列表 >> C# >> 求助 WMI 獲取隨身碟插入的USB接口
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
求助 WMI 獲取隨身碟插入的USB接口
價值 : 20 QP  點閱數:189 回應數:1

樓主

smith
門外漢
0 3
47 2
發送站內信

再發文之前其實就已經查閱很多WMI的表單
我的目的是想透過WMI表單得知
哪個隨身碟插入哪個接口(USB2.0 or 3.0 or 3.1..)
現在能查到哪個DeviceID、VID、PID是隨身碟以及3.0或2.0的接口的ID,但是卻沒辦法確認他插入的是哪個接口
雖然USB_HUB裡也有USB Version的資料 但是卻是空白留白
剩下的Disk裡也都只是自身資料ID而已 沒辦法判斷其USB插的是2.0還是3.0的接口
PnPEntity、USBHub、USBControllerDevice、LogicalDisk、DiskDrive等等皆沒辦法判別
使用過不同USB接口來測獲取資料是否有差異,結果都是失敗或是順序先後改變而已,沒辦法作為唯一性的判斷

所以想請教一下,是否有其他WMI資料表對我來說是有價值性的但我卻沒發現
或是根本沒辦法用WMI去辨別,只能從其他手段dllImport等等之類的去做判斷


別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
作者回應

smith
檢舉此回應
以解決 基本上沒辦法單靠WMI解決
在WMI的Win32_USBControllerDevice表單 可以看出一些變化
雖然沒有詳細的資料 但是他在搜尋顯示排序是依靠node tree的順序顯示 (猜測)
然後使用WMI表找出要判斷的裝置DevID 丟入API 搜尋父類是誰
在依靠父類去找USBHUB表的資料 看有沒有這個父親 有的話就可以看出是2.0還是3.0



本篇文章回覆於2017-12-18 00:02
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.