![]() |
||
Basic Member
加入日期: Apr 2005
文章: 11
|
[分享]自製USB疑難雜症解決指南
這份文件我花了早上的時間一字一句親手打字彙整,有鑒於客戶與朋友常碰見USB裝置的問題,特別寫了一篇排解指南給大家分享,其中的案例七成以上都是實際遇到過,並且可以成功正確的解決!若有錯誤的地方請告訴我,有任何問題可以一起討論,謝謝各位
========================================================== 常見USB問題解決指南 MJSONXX彙整 會想要整理這篇文章的原因,是有鑒於客戶端或朋友時常碰到USB的問題,希望這份指南可以快速且有效的幫助使用者解決USB的問題! 希望你們可以透過這篇文章,讓自己功力有所提升…Anyway有任何問題可以PM給我…. 可能原因 解決方案 由於隱藏的磁碟代號引起 利用TweakUI來檢查是否有隱藏的磁碟代號 OS為Windows 2003 Enterprise或DataCenter 若是Windows 2003 Enterprise/DataCenter的版本預設不會自動指派磁碟代號給卸除式媒體,因此到磁碟管理去新增一個磁碟代號給USB裝置 與網路磁碟機代號或是虛擬光碟機軟體衝突造成的磁碟代號遺失 檢查是否與”網路磁碟機”或是”虛擬光碟機”(如酒精)的代號相衝突(Windows會根據USB的硬體ID來記住曾經指派過什麼Drive Letter給它) USB隨身碟Partition Table損毀或是尚未建立Partition 檢查USB隨身跌的Partition Status是否為正常 USB隨身碟具有特殊功能 (如加密或是指紋辨識) 該隨身碟具有”加密”功能,需要額外的辨識方式才能夠正常驅動(如諮安科技的指紋辨識隨身碟,必須經過指紋辨識後才能夠正常驅動使用) 由於虛擬光碟軟體 DaemonTools 4.0的系統檔案衝突造成XP無法指派磁碟代號給USB卸除裝置 刪除C:\SYSTEM32\Drivers目錄下的以下系統檔案sptd.sys, secdrv.sys, sptd.sys, sptdNNNN.sys (NNNN = numbers) 或下載使用專門移除工具 : sptdinst_x86.exe http://www.daemon-tools.cc/dtcc/files/sptdinst_x86.exe 由於其他第三方軟體造成的,如防毒軟體/燒錄軟體/磁碟備份軟體 1. 進入Safe Mode插入USB隨身碟測試功能是否正常,若正常,則開機到Normal Mode 2. MSCONFIG 選擇 Service頁籤,勾選”Hide All Microsoft Services”然後將其他服務全部取消勾選,重新開機進入Normal Mode在插入USB隨身碟試試看 由於驅動程式衝突造成的 1. 打開裝置管理員,選擇”顯示隱藏的裝置”,檢查”USB通用序列埠”,以及”磁碟機”的地方是否有該裝置的驚嘆號圖樣,根據代碼再做Debug 2. 利用DEVCON的Command-Line Tool來清除USB的驅動程式,並且重新安裝 由於”群組原則”限制造成 1. 控制台�系統管理工具�本機安全性原則�本機原則�安全性選項�裝置:允許格式化及退出卸除式媒體 選擇”Administrator and Interactive Users” 2. 使用者重新登出在登入之後再插上USB隨身碟試試看 由於Spyware Doctor這套軟體造成的 若該電腦中有安裝這套軟體,可以Uninstall,重新開機再測試看看 由於ZoneAlarm這套軟體造成的 ZoneAlarm這套防火牆軟體從v6.1~6.5具有保留磁碟代號給CDROM的Bug,可至官網下載修正程式 � USB裝置本身具有【防寫開關】而且被設置為ON � 無法將資料寫入USB隨身碟,即使它沒有防寫開關功能 1. 檢查USB隨身碟是否有此開關,留意其狀態應為OFF狀態後,再重新插拔測試 2. Windows可以對”寫入保護”的隨身碟依然寫入資料,若需要啟用此功能請檢查下列機碼 HKLM\SYSTEM\CurrentControlSet\Control\StorageDevicePolicies "WriteProtect"=dword:00000001 禁止寫入資料 "WriteProtect"=dword:00000000 允許寫入資料 Autorun設定錯誤造成的 從gpedit.msc檢查關於”自動撥放”的設置是否正常 或是使用Autorun Settings 工具來檢查Autorun設置http://www.uwe-sieber.de/files/autorunsettings.zip 一插入USB隨身碟,OS反覆詢問驅動程式,並且無法正確安裝OS內建驅動程式 這是由於Registry損毀造成的 1. 檢查HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion下的”Device Path”是否為%SystemRoot%\Inf 2. 刪除C:\WINDOWS\inf\infcache.1 (重開機會重建) 檢查下列兩個機碼 HKLM\SYSTEM\SETUP以及 HKLM\SOFTWARE\Microsoft\Factory 不應有”FactoryPreInstallInProgress” 以及“AuditInProgress”若有請刪除,或是由1設置為0 由於主機板晶片組與USB裝置不相容造成 1. 查詢GOOGLE或論壇是否有類似的問題與狀況 2. 上主機板官網或是晶片組官網看看有沒有驅動程式更新程式,若是INTEL晶片,可以更新IAA INF試試看 廉價的USB線材或是其他硬體本身問題 1. 更換線材試試看(若USB為Y型,請兩頭都插入USB連接埠測試,避免USB供電不足造成的原因) 2. 本身USB隨身碟損壞或不正常工作 USB隨身碟被辨識成 ”無法辨識的裝置” 1. 利用DEVCON來刪除所有USB裝置並重新開機 (使用RenewUSB.dat) 2. 將下列2行文字存成cmd檔案來呼叫裝置管理員,並且勾選”檢視所有隱藏裝置”,將”磁碟機”中,灰色透明的裝置移除(即有問題的USB隨身碟型號) set DEVMGR_SHOW_NONPRESENT_DEVICES=1 devmgmt.msc ◆ 快速除錯技巧 1. 正常模式無法偵測到隨身碟,但是隨身碟電源燈號正常 2. 進入SAFE MODE測試看看,若可以正常偵測,則可能是軟體造成 3. 換插別的USB埠位測試,測試時應該插入主機板本身內建的USB埠而避免插入機殼前置USB孔位,以快速排除問題是出在哪裡 4. 檢查磁碟管理以及裝置管理員的裝置狀態 ◆ 小知識 [理論上] 每個USB卸除裝置都具有獨一無二的[Hardware ID].作業系統會根據該ID來配發磁碟代號給它們 Hardware ID = VenderID&ProductID\USB Serial Number 例如 : USBSTOR\DISK&VEN_JETFLASH&PROD_TS4GJF110&REV_0.00\F271DB42A0A2CA&0 由上面可以看出來VEN_JETFLASH是”創見公司的產品 PROD_TS4GJF110&REV_0.00是”產品型號” F271DB42A0A2CA&0 是”USB序列號,廠商在量產的過程當中亂數寫入Firmware韌體中” [實務上] 就有碰過2支同廠牌同型號同規格的隨身碟,其Control ID居然也”一模一樣”,因此這2支隨身碟”同時插入,只有第1支插入的會被辨識偵測到”但是另外一支無論你插哪個USB埠都無法被偵測,除非將另一支移除,再插上就正常,不過發生這樣的機率是很低啦! (發生的地就在對岸…..黑心又懶惰的工廠! 我想目的是節省韌體寫入成本吧! 哈哈哈! ) [解決方法] 讓第一支隨身碟辨識為USBSTOR\DISK&VEN_JETFLASH&PROD_TS4GJF110&REV_0.00\F271DB42A0A2CA&0 讓第二支隨身碟辨識為 USBSTOR\DISK&VEN_JETFLASH&PROD_TS4GJF110&REV_0.00 發現了嗎?第二支隨身碟沒有USB Serial Number的部分…如此一來,就可以同時使用2支隨身碟嚕! 作業系統可以透過更改Registry機碼,來決定要忽略所有USB裝置的USB Serial Number或是”特定USB裝置的Serial Number” [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\UsbFlags] 在GlobalDisableSerNumGen: 0 忽略所有USB Serials Number 1 啟用偵測USB Serials Number (預設值) 在上面的機碼建立一個”二進位值”的為"IgnoreHWSerNum" 例如 VendorID=1111 , ProductID=9999: 所以 IgnoreHWSerNum11119999=1 ListUsbDrives -a (all drives and informations): 如何查詢USB Device Hardware ID 我們可以在分析幾個Hardware ID USBSTOR\DISK&VEN_ST980815&PROD_A&REV_3.AL\0&0 類型為USB 磁碟Seagate公司 型號為ST980815的硬碟 韌體為3.AL USBSTOR\DISK&VEN_FUJITSU&PROD_MHV2080AH&REV_0000\123456789012&0 類型為USB 磁碟Fujitsu公司 型號為MHV2080AH的硬碟 IDE\DISKFUJITSU_MHT2060AH_______________________006C____\5&29AFC1B&0&0.0.0 類型為IDE 磁碟 Fujitsu公司 型號為MHT2060AH的硬碟 |
|||||||
![]() |
![]() |
Senior Member
![]() ![]() ![]() 加入日期: Aug 2001 您的住址: 台中
文章: 1,475
|
感謝心得分享∼
昨天在壹台ACER的NB插上外接2.5吋HDD, 遇到"集線器連接埠發生電源爆衝"的錯誤訊息, google了一下好像也沒找到什麼具體可以解決的辦法 ![]() 反正不影響其他USB裝置運作,就不理他了 囧
__________________
我的主機 --------------------------------------------- Intel E8400|ASUS P5QL-E|MSI 9800GT|ZIPPY HP2-6500P --------------------------------------------- |
||
![]() |
![]() |
Basic Member
加入日期: Apr 2005
文章: 11
|
關於usb電源暴衝,一般來說都是由於電源供應不足的關係
常發生在 1. NOTEBOOK 2. USB HUB 如果是2.5吋的USB硬碟, 若是插在PC上養成習慣Y型兩頭都插上,粗的供電,細的是輔助電源,這樣傳大檔案時才不會有Windows延遲寫入的問題 若是插在NB上有些USB有2~4組USB埠,建議如果可以也是兩頭都插上去,如果NB只有2個USB埠,左右各一...那麼如果有USB HUB就將他接上變壓器,然後將USB HUB接在NB上面,再將硬碟的2頭插在USB HUB上以維持穩定的供電 還有就是如果有用USB HUB要接硬碟這種設備,一定要將USB HUB的變壓器接上,才會足夠電力供應 如果是1.8吋的硬碟,那麼就只要接一個USB頭就可以了,因為他的耗電量比較小,相對的就不需要輔助電源! 另外Fujitsu的硬碟若是電源供應不足,還會有咖咖咖的壞軌聲音....如果你聽到這種聲音的話...不要懷疑!除非真的壞軌,不然100%是供電不足造成! 以上個人經驗供您參考.... |
![]() |
![]() |