![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| Экскалупатор |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1746 Регистрация: 1.4.2009 Где: г. Минск Репутация: 11 Всего: 24 |
ну я и имел ввиду, что тут не правильно блокируется. потому что блокируется поток в котором принимаются значения. а надо блокировать тот в котором открывается порт. кстати, может попробовать просто открыть порт, выполнить ВСЕ записи и чтения, а потом закрыть его? хотя держать постоянно открытым соединение тоже не выход... по поводу чтения байтов: ReadByte. правда оно читает 1 байт. так что можно в цикле запускать побайтовое чтение до тех пор пока не будет прочитан конец потока, или запрашивать количество доступных байтов. Добавлено через 48 секунд ну или можно строку конвертировать в массив байтов. |
|||
|
||||
| WantToProg |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 88 Регистрация: 13.4.2009 Репутация: нет Всего: нет |
В том то и дело, я не знаю, чем и когда закончится пакет получаемых данных. Если в tcp сокете есть DataAvailable, то тут этого нет. А только буффер DataRecieved И int byteRecieved = port.BytesToRead; Эх, как бы это все заставить работать нормально. Просто усыплять цикл искуственно, кажется не правильным подходом, происходит искусственная задержка, что само собой не хорошо. А здесь самая большая загвоздка. Я пробовал конвертировать в массив байтов. Получается совсем не то, что приходит в байтах (проверял и снифером и по DataRecieved) |
|||
|
||||
| WantToProg |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 88 Регистрация: 13.4.2009 Репутация: нет Всего: нет |
doublepost
Это сообщение отредактировал(а) WantToProg - 16.2.2010, 14:37 |
|||
|
||||
| Экскалупатор |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1746 Регистрация: 1.4.2009 Где: г. Минск Репутация: 11 Всего: 24 |
||||
|
||||
| WantToProg |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 88 Регистрация: 13.4.2009 Репутация: нет Всего: нет |
На этом спасибо, но я вроде решил проблему
Все оказалось проще чем я думал |
||||
|
|||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |