久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
從系統中卸載 USB 設備
[打印本頁]
作者:
jialinx
時間:
2015-9-13 16:46
標題:
從系統中卸載 USB 設備
測試的過程中需要用到自動從系統中卸載 USB 設備,就從網上找來資料,查看 USB 設備的卸載過程。一般情況下,先查找總線類型,如果是 USB 設備,則可以考慮卸載。另外,需要檢查這個設備是屬于哪一種類型。用GetDriveType來獲取存儲設備的類型,必須是2(可移動設備)或5(CDROM)類型。因為這兩種設備都涉及到了是否存在介質的問題,如果只是簡單的采用Dir列舉目錄的方法,可能都會出錯。甚至對于要列舉的目錄下沒有文件存在時,采用列舉目錄方法來判斷一個驅動器是否正常,都會出現誤判。在判斷完驅動器類型后,還可以通過GetVolumeInformation 來獲取文件卷的信息,如磁盤序列號,文件系統類型等內容,進而通過GetDiskFreeSpaceEx這個函數,取得磁盤容量的大小及剩余容量的大小。至此,對于一個文件卷的基本信息都可以取得了。
下面要做的事情是檢查該文件是否有被系統的其他進程占用。這個操作比較繁雜。首先取得當前進程的ProcessID,由此查找到系統的進程列表,并且采用循環的方法,從系統的進程列表中找出的所有使用該設備的進程。如果沒有其他進程使用,則可以關閉該設備。否則失敗。
當沒有其他進程使用時,查找該設備的連接關系,即從磁盤接口類中找到該設備的物理設備名稱,如...\\Device\Harddisk1\(lp2)VID_0x1023....類似的設備名稱,通過查找其詳細接口信息,找到其上層連接關系(CM_Get_Parent),即屬于哪一個USB Storage接口,最后通過給該端口發送CM_Request_Device_Eject請求,完成卸載過程。
需要注意的是,當一個USB 端口安裝有多個設備時,其中的一個設備卸載,會導致全部連接到該端口的設備都卸載掉,而不是單一的指定的設備。當然,如果其中有的設備在工作中,被系統的其他進程占用,都會導致卸載的失敗。
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
99re在线视频
|
a欧美
|
操久久
|
国产乱码精品一区二区三区中文
|
成人区精品一区二区婷婷
|
国产精品一区二区av
|
成人免费观看男女羞羞视频
|
久久久精品一区二区三区四季av
|
免费影视在线观看
|
国产99视频精品免费播放照片
|
av中文字幕在线播放
|
福利一区视频
|
精品一区av
|
日韩在线不卡视频
|
中文字幕亚洲精品
|
日韩中文久久
|
四虎影视免费观看
|
午夜精品久久久久久久久久久久
|
www久久久
|
国产一在线观看
|
久久久久久久av麻豆果冻
|
99久久99久久精品国产片果冰
|
国产精品视频一区二区三
|
国产在线播
|
国产精品美女一区二区三区
|
午夜激情影院
|
国产高清视频一区
|
一区二区欧美在线
|
精品国产乱码一区二区三区a
|
www.黄网
|
伊人亚洲
|
国产综合久久久久久鬼色
|
久久噜噜噜精品国产亚洲综合
|
国产精品极品美女在线观看免费
|
亚洲一区二区在线播放
|
国产麻豆乱码精品一区二区三区
|
精品国产一级片
|
国产欧美视频一区二区三区
|
国产精品网页
|
日韩欧美一区二区三区免费观看
|
日韩精品久久久久久
|