Можно ли сделать массив последовательных портов в vb? - PullRequest
1 голос
/ 06 июня 2011

Я довольно новичок в Visual Basic (VB), но у меня уже есть запущенный код для доступа ко всем моим последовательным портам.Проблема в том, что я хочу загрузить несколько последовательных портов в массив и перебрать их в своих функциях.Программа позволяет мне создавать ports (), но завершается неудачно, когда я пытаюсь ее заполнить.

Dim ports As IO.Ports.SerialPorts()
ports(0) = SerialPort1

Где SerialPort1 - это объект, который я перетащил из панели инструментов Visual Studio.

1 Ответ

1 голос
/ 06 июня 2011

Я бы использовал List (of) для этого:

    Dim Ports As New List(Of IO.Ports.SerialPort)

    Dim newport1 As New IO.Ports.SerialPort
    newport1.PortName = "COM1"

    Dim newport2 As New IO.Ports.SerialPort
    newport2.PortName = "COM2"

    Ports.Add(newport1)
    Ports.Add(newport2)

    'later in code, handle all ports with index in the Ports-list
    Ports(0).Open() 'open port1
    Ports(1).Open() 'open port2

или это немного по-другому:

    Dim Ports As New List(Of IO.Ports.SerialPort)

    Ports.Add(New IO.Ports.SerialPort)
    Ports.Add(New IO.Ports.SerialPort)

    'later in code, handle all ports with index in the Ports-list
    Ports(0).PortName = "COM1"
    Ports(0).Open()

    Ports(1).PortName = "COM2"
    Ports(1).Open()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...