私はCOMシリアルポートからデータを読み込もうとしていますが、ポートが自動的に閉じているので、何もしないでください。私は処分のセットアップイベントを試して、セットアップしようとキャッチし、すべてのキャッチをデバッグしますが、幸運。C#シリアルポート自動閉鎖
いけない行うには他に何を知っている..
はSerialPort.isOpenはfalseを返し、スレッドがシリアルポートを再び開いたときに、それが動作することを無限のスレッドを作成しようとしましたが、スレッドが100%のCPUを食べます...
シリアル
_serialPort.DataReceived += new SerialDataReceivedEventHandler(RecebendoDados);
_serialPort.Disposed += new EventHandler(PortaFechou);
_serialPort.ErrorReceived += new SerialErrorReceivedEventHandler(PortaErro);
_serialPort.PinChanged += new SerialPinChangedEventHandler(PinMudou);
_serialPort.Open();
PortIsOpen = _serialPort.IsOpen;
シリアルポートオブジェクトは、それが閉じたときに通知するイベントを投げていますか?もしそうなら、あなたの再オープンスレッドはただ待つことができ、クローズが発生したときに通知されます。 –
ハードウェアコントロールを無効にしてください。彼らは古風なもので、特にケーブルにケーブルが取り付けられている場合に問題が発生する可能性があります。私はまた、USB/9ピンのDコネクタアダプタで問題が発生しているのを見てきました。 – jdweng
Markについては、ドキュメントのポートオブジェクトは、COMポートが(終了後に)破棄されたときにイベントをスローすると言いましたが、このイベントを監視しようとしましたが、 –