Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 串行端口异常_C#_Winforms_Serial Port_Barcode Scanner - Fatal编程技术网

C# 串行端口异常

C# 串行端口异常,c#,winforms,serial-port,barcode-scanner,C#,Winforms,Serial Port,Barcode Scanner,我试图打开一个端口以便与条形码扫描仪通信,但我得到的只是一个 System.IO.IOException连接到系统的设备不工作 这是异常的,因为我使用COM端口监视器测试了设备。通过测试,我的意思是我用扫描器读取一些条形码,我观察输入。一切都很好。。。这是我的简单代码: SerialPort _serialPort = new SerialPort("COM10"); _serialPort.BaudRate = 9600; _serial

我试图打开一个端口以便与条形码扫描仪通信,但我得到的只是一个

System.IO.IOException连接到系统的设备不工作

这是异常的,因为我使用COM端口监视器测试了设备。通过测试,我的意思是我用扫描器读取一些条形码,我观察输入。一切都很好。。。这是我的简单代码:

SerialPort _serialPort = new SerialPort("COM10");            
        _serialPort.BaudRate = 9600;
        _serialPort.Parity = Parity.None;
        _serialPort.StopBits = StopBits.One;
        _serialPort.DataBits = 8;
        _serialPort.DataReceived += new SerialDataReceivedEventHandler(sp_DataReceived);
        _serialPort.ReadTimeout = 500;
        _serialPort.WriteTimeout = 500;
        _serialPort.DtrEnable = true;
        _serialPort.RtsEnable = true;
        _serialPort.Handshake = Handshake.None;
        _serialPort.Open();
        MessageBox.Show("Port opened");


注意:我已经检查了论坛上几乎所有建议的解决方案,但没有任何解决我的问题。。。另外,我使用Process Manager检查并确保COM端口未被任何其他应用程序使用

尝试缩短代码以删除默认值,如下所示:

SerialPort _serialPort = new SerialPort("COM10");            
    _serialPort.BaudRate = 9600;
    _serialPort.DataReceived += new SerialDataReceivedEventHandler(sp_DataReceived);
    _serialPort.Open();
    MessageBox.Show("Port opened");

当您使用端口监视器时,它是否使用相同的端口;波特;和流量控制?我注意到您使用的是
DTR
RTS
,但是
Handshake=Handshake.None
。这可能是个问题是的,我使用的设置与端口监视器完全相同。我还将RTS和DTR设置为false。。。没有任何更改…最好检查VisualStudio调试执行的位置和问题所在的详细信息,或使用工具(如)。尝试其他端口