0

重複の可能性:
接続されていない仮想シリアル ポートの解放

これは、シリアル com ポートを接続するための私のコードです。

try{
SRR_serial_port.PortName = comboBox2.Text;
SRR_serial_port.BaudRate = 9600;
SRR_serial_port.Parity = System.IO.Ports.Parity.None;
SRR_serial_port.DataBits = 8;
SRR_serial_port.StopBits = System.IO.Ports.StopBits.One;
SRR_serial_port.Handshake = System.IO.Ports.Handshake.None;       
SRR_serial_port.WriteTimeout = 500;

SRR_serial_port.Open();
}
catch{}

次に、次のようにポートを閉じます。

SRR_serial_port.Close();

今、私はこのシナリオで問題を抱えています:

  1. ポートを開く
  2. シリアル ポート ケーブルを取り外します (コンピュータの USB ポートから)
  3. ケーブルを再度取り付けます
  4. ポートを閉じる
  5. ポートを再度開く

これにより、次のエラーが発生します。

ポートへのアクセスが拒否されました

デバッグ モードでは、この行の次の行でこのエラーが発生することがわかります。

SRR_serial_port.Open();

つまり、この行が実行され、ポートの状態が open に変わりますが、しばらくすると (次の行の実行中)、そのエラーが表示されます。

ただし、このシナリオではエラーは発生しません。

  1. ポートを開く
  2. ポートを閉じる
  3. ケーブルの取り外しと再取り付け
  4. ポートを開く
4

0 に答える 0