![]() |
|
#1
|
|||
|
|||
![]() Чесной народ подскажите как можно в Делфях пропарсить UDP пакет, так чтобы информация что внем была читаемая. Вот его структура
Поле Длина, байт Описание FLAG 1 Флаг начала пакета, FLAG=0x40 PROTOCOL 1 Идентификатор протокола, схема шифрования ADDRESS 2 Младшая часть адреса источника пакета LENGTH 2 Длина поля CDATA CRC16 2 Контрольная сумма поля CDATA CDATA переменная Данные/команды (определяется PID) |
#2
|
|||
|
|||
![]() А ты как его получаешь?
Вообще - пишется струтура, делается на нее указатель, потом этот указатель "накладывается" на область памяти с данными. Код:
PS. не уверен с полем CDATA. Надо смотреть подробнее. |
#3
|
|||
|
|||
![]() Эт все хорошо, но где находиться GetPacket(), а то чтот немогу найти.
|
#4
|
||||
|
||||
![]() Так вам-же задали вопрос, как вы эти данные получаете. За неимением ответа была предложена абстрактная функция которую вы сами должны наваять.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#5
|
|||
|
|||
![]() Получаю пакет с помощью
Код:
lmikle: ползуемся тегами!!! |
#6
|
|||
|
|||
![]() Возьми не TStringStream, а TMemoryStream. Там можно получить указатель на память типа Pointer - именно то, что нужно для моего кода.
|