iT邦幫忙

0

C# 使用SerialPort 找不到Com?

  • 分享至 

  • xImage

我將所有的portName跑出來但是都沒東西
string[] ports = SerialPort.GetPortNames();
foreach (string s in ports)
Console.WriteLine(s);

後來小弟我去看了一下裝置管理員比對一下別人的裝置管理員
1.要嘛就是USB名稱的結尾有"(COM1)"
2.不然就是有"序列埠(com & lpt)"

https://ithelp.ithome.com.tw/upload/images/20220321/201438301WziNq9OMW.png

是不是有什麼可解的,否則小弟我需要用SerialPort這個元件去拿Barcode的讀寫.

看更多先前的討論...收起先前的討論...
天黑 iT邦研究生 5 級 ‧ 2022-03-21 14:10:15 檢舉
請問一下裝置相關資訊是什麼? 還有裝上去的裝置有正常運行嗎? 驅動已經正常安裝了嗎?
你好,裝置是普通的USB,皆可正常讀取
PC上的裝置管理員會有一個項目為"序列埠(com & lpt)"
但我的筆電只有通用序列匯流排控制器
franx0722 iT邦新手 2 級 ‧ 2022-03-21 14:46:10 檢舉
barcode reader?
franx0722
是的
預計要用Barcode掃描器掃條碼後,使用VS的元件SerialPort讀取
不明
【**此則訊息已被站方移除**】
你需要的是USB 轉 Serial port 轉換接頭,灌它附的光碟(driver)後,當你"插上" USB 轉 Serial port 轉換接頭後,你就會在 裝置管理員 看到 "序列埠(com & lpt)",但當 "拔下" USB 轉 Serial port 轉換接頭時,裝置管理員的 "序列埠(com & lpt)" 也會消失!! C# 與 VB.net 使用SerialPort 抓的com port是在裝置管理員的 "序列埠(com & lpt)" 所列的port
如果你的PC有serial port接口,那你插上Barcode reader(9 pin)時,第一次插上(一般)可能需要安裝Barcode reader的driver
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
尼克
iT邦大師 1 級 ‧ 2022-03-21 15:00:25

你需要找軟體USB轉RS232軟體
但是要測試看看是否能成功。

看更多先前的回應...收起先前的回應...

謝謝
但安裝失敗...

不明
【**此則訊息已被站方移除**】
尼克 iT邦大師 1 級 ‧ 2022-03-21 15:55:40 檢舉

你可以再找一下其它軟體。

我有點放棄了 打算直接抓一台PC另外寫了 哈哈

尼克 iT邦大師 1 級 ‧ 2022-03-21 16:32:01 檢舉

因為我有用過POS機需要RS232,但是現在機器要有RS232很難,只能用模擬軟體!

rofellos iT邦新手 2 級 ‧ 2022-03-22 09:19:53 檢舉

驅動程式不支援就不會顯示

0
天黑
iT邦研究生 5 級 ‧ 2022-03-21 15:12:52

用別的抓法試試,PC跟NB看起來就是有差...,有找到其他方法參考看看

謝謝
這個我已經有試過了
只要是Serial類就一定只認"ComX"
但似乎能被USB類的抓到(如下)
問題是 我要用SerialPort這個元件阿XD

var searcher = new ManagementObjectSearcher(@"Select * From Win32_USBHub");
foreach (ManagementObject port in searcher.Get())
{
// show the service
ComPort c = new ComPort();
c.name = port.GetPropertyValue("DeviceID").ToString();
c.description = port.GetPropertyValue("Caption").ToString();
ports.Add(c);
}

0
ntustzeus
iT邦新手 2 級 ‧ 2022-03-24 15:33:11

如果是USB的條碼機,你開了記事本之後刷條碼,內容會直接出現在上面的話,這種其實是HID,功能和鍵盤差不多。這種的刷東西會受輸入法影響,所以要用時記得調整英數模式(Caps,大小寫也有差)

如果是SerialPort的條碼機,必須插到PC後產生一個COM Port的號碼,並有一個專屬的程式開了Port來接收

你的問題應該是要找一隻有RS232輸出的條碼機,有些條碼機可能可以用參數設定是哪種工作模式,比如說設定後會產生Virtual COM Port給你用

我要發表回答

立即登入回答