Я получил задание считывать непрерывные данные из последовательного порта и отображать их в текстовом поле.
Данные отображаются в текстовом поле правильно, но проблема в том, что всякий раз, когда я пытался выйти из формы, система выдаст исключение.
Операция ввода-вывода была прервана либо из-за выхода потока, либо из-за запроса приложения
Что я уже пробовал:
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Окна.Формы.FormClosingEventArgs) Обрабатывает Me.FormClosing.
(
Попробуй
Если serialport1.open = True, то
serialport1.рядом()
Меня.рядом()
поймать ex как исключение
Конец попытки
)
Для чтения данных через последовательный порт используется serialPort.ReadLine.
Данные, показанные в Гипертерминале
21701RC 21701RC 21701RC 21701RC и так далее непрерывно.
clwprogrammer
Просто чтобы вы знали, люди codeproject обычно не помогают с заданиями человека. Не ждите здесь точного ответа. Кто-то может указать вам правильное направление, чтобы вы могли исследовать, как правильно закрыть соединение последовательного порта. В этой ситуации это зависит от того, как вы непрерывно читаете из последовательного порта. Вы используете несколько потоков? Вы используете таймеры? и т. д... вероятно, вам следует обновить свой вопрос еще несколькими деталями, чтобы кто-то мог указать вам правильное направление.
CHill60
Хороший совет от @clwprogrammer, но вы также должны избавиться от try-catch ... вы проглатываете любые ошибки, не выясняя, что они собой представляют