Barcode Scanner Emulator
條碼掃描器鍵盤配置錯誤
掃描後出現錯誤或錯亂的字元——尤其是數字、標點或符號——幾乎總是掃描器與作業系統之間的鍵盤配置不符,而不是解碼錯誤。
問題
掃描值包含錯誤字元,常常是特定符號或數字被換成了別的字元(常見模式:數字看起來正確,但 -、/ 或 . 這類符號不對,或者預期字母的位置出現了完全不同的字母)。
為什麼會發生
如HID keyboard wedge 說明所述,HID 鍵盤模式的掃描器使用內部設定的鍵盤配置,把每個解碼字元轉換成按鍵碼,再送出該按鍵碼。作業系統再用自己設定的配置重新解釋按鍵碼。如果兩者不一致(例如掃描器設為 US QWERTY,作業系統設為法語 AZERTY),某些鍵會對應到不同字元,不符就表現為錯誤輸出——儘管掃描器已經完美解碼了條碼。
如何診斷
- 把包含完整數字範圍與常用符號的條碼掃入鍵盤事件測試器。
- 將記錄的
key值與實際條碼內容比較。如果特定字元總是被替換成另一些特定字元,這強烈表明是語系不符,而不是隨機解碼錯誤。 - 檢查作業系統鍵盤配置設定(多數系統在「語言與地區」中),並與設定手冊或供應商工具中列出的掃描器語系比較。
如何修復
使用廠商設定條碼表或設定工具,把掃描器的鍵盤配置重新設定為它所連接電腦的作業系統配置。這是掃描器端修復。改作業系統配置很少實用,因為它會影響這台機器上的其他所有輸入裝置。
如果你管理許多作業系統語系不同的工作站,應盡可能統一一種掃描器語系與一種作業系統語系,以避免按機器逐台設定掃描器。
如何驗證
把同一測試條碼再次掃入鍵盤事件測試器,確認每個字元,尤其是符號,現在與預期條碼內容完全一致。