Windows / .NET способ мониторинга / отладки последовательного порта?

StackOverflow https://stackoverflow.com/questions/335279

Вопрос

У меня есть приложение .NET 2.0, работающее под управлением Windows XP Professional. Это приложение использует последовательный порт для связи с некоторыми пользовательскими устройствами.

По некоторым причинам, некоторые из наших нестандартных ПК имеют проблему с последовательным портом, когда он перестает работать после нескольких недель использования. Кроме автоматических перезагрузок, которые не будут работать в моем сценарии, есть ли какие-либо утилиты, которые могут отлаживать / диагностировать последовательный порт? Есть ли библиотека .NET, которая может помочь с этим (могу ли я написать свою собственную утилиту для отладки порта)?

Кроме того, кто-нибудь имел опыт работы со следующей библиотекой: Sax CommStudio

Это было полезно?

Решение

В прошлом я использовал Sax CommStudio, но сейчас я просто использую System.IO.Ports.SerialPort.

Вы случайно не используете последовательный порт USB? У меня были проблемы с теми, кто собирается BSOD и еще много чего. В этом случае у вас проблема с драйвером, а не с программным обеспечением.

Если вы хотите устранить неполадки вне вашего приложения, вы можете взглянуть на Серийный монитор HHD . Я думаю, что у них есть бесплатная пробная версия, но если вы занимаетесь серьезной разработкой RS232, ее действительно стоит купить.

Другие советы

portmon - http://technet.microsoft.com/en-us /sysinternals/bb896644.aspx

Я бы сказал, что это самый близкий к «стандартному» инструменту для мониторинга последовательных портов в Windows. Но небеса помогут вам, если вам понадобится попытаться отследить что-то через две недели, используя такой инструмент ...

Я подозреваю, что проблема с драйвером - это «правильный» последовательный порт с обычным UART, или это какой-то USB-Serial конвертер или что-то подобное?

Обновление 2017 года: Portmon был достаточно полезным предложением в 2008 году, но никогда не обновлялся для работы с 64-разрядными версиями Windows, поэтому не пытайтесь попробовать его сейчас на современном компьютере.

Я использовал бесплатный монитор жесткого диска с программным обеспечением жесткого диска. Он будет регистрировать весь трафик и открывать / закрывать последовательный порт. Таким образом, у вас есть журнал данных и работы последовательного порта.

Бесплатный монитор последовательного порта

Вы упоминаете, что работаете в Windows XP и .NET 2.0, .NET вполне может быть вашей проблемой, так как в большинстве версий .NET есть ошибки, влияющие на последовательные порты. Минимальная версия, которую я бы порекомендовал для использования последовательных портов, - это .NET 3.5 SP1.

Смотрите также: http://blog.zachsaw.com/2010/07/net-serialport -woes.html

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top