2015-05-04 9 views
1

Я использую этот код, чтобы обнаружить все доступные последовательные порты:Проверьте, есть ли последовательные порты

foreach (string PortName in System.IO.Ports.SerialPort.GetPortNames()) 
{ 
    PortBox.Items.Add(PortName); 
} 

Есть ли способ MessageBox.Show("Could not find any ports"); если нет последовательных портов?

+3

Не используйте класс SerialPort, если вы еще недостаточно изучили, чтобы узнать ответ на этот вопрос. Он съест вас живым и выплюнет ваши кости. –

+0

Ну ... Я могу только узнать об этом, спросив. – crim981

ответ

0

GetPortNames() возвращает массив. Сохраните этот массив как переменную, а затем проверьте, имеет ли он Length ноль.

string[] portNames = System.IO.Ports.SerialPort.GetPortNames(); 
if (portNames.Length == 0) 
{ 
    // No serial ports - do whatever 
} 
+0

Спасибо, много. – crim981

+0

Добро пожаловать! Вы можете [принять] (http://stackoverflow.com/help/accepted-answer) мой ответ, если вы считаете, что он решил вашу проблему. –