Не получается правильно объявить 1 параметр в свойстве Read компонента SerialPort

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
dmitry1208197320
Сообщения: 16
Зарегистрирован: 13 янв 2010, 17:48

Пишу в Visual Studio 2008 на С++.
Подскажите новичку, как правильно объявить 1 параметр (массив) для свойства Read компонента SerialPort, чтобы при компиляции не было ошибки?
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

Сомневаюсь, что ты пишешь на С++. Класс System.IO.Ports.SerialPort является частью .NET библиотеки.

В С#.NET это делается следующим образом:

Код: Выделить всё

internal void recieveMessage(ref Message message, int length)
{
   lock (_serialPort)
   {
      // This method may return more message bytes than specified in the length.

      int numberOfBytesRead = 0;
      byte[] readBuffer = new byte[length];

      numberOfBytesRead = _serialPort.Read(readBuffer, 0, length);

      // Force a read (if any data exists) to clear the buffer of any garbage data
      if (_serialPort.BytesToRead > 0)
      {
         _serialPort.ReadExisting();
      }
      // Parse the message
      message = message.Parse(readBuffer);
   }
}
Для остальных .NET компилеров код такой же, с точностью до переобозначений.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
dmitry1208197320
Сообщения: 16
Зарегистрирован: 13 янв 2010, 17:48

Спасибо Вам. Да, действительно, я программирую на .NET. С кодом разобрался.
Ответить