Здравствуйте ГУру. Нуб просит совета. Осиливаю потихоньку тему, есть 1 вопрос.
Как сделать так, чтобы программа в определенном месте заканчивала обработку первого пакета и начинала обрабатывать следующий такой же?
Пример.
Код:
...
if Fromserver and (pck=HStr('1b 04 00 00 00')) then begin
buf:=HStr('45 00 00 00 00 00 00 00 00 00');
if Fromserver and следующий такой же пакет (pck=HStr('1b 04 00 00 00')) then begin
buf:=HStr('45 01 00 00 00 00 00 00 00 00');
...
Что нужно прописать, чтобы программа после посылки buf:=HStr('45 00 00 00 00 00 00 00 00 00'); заканчивала работу с этим пакетом, и начинала обрабатывать следующий? Или просто закрыть end ом и следующий If как раз попадет на следующий такой же пакет?
//J-Fobos: основной блок программы выполняется для каждого пакета что проходит через пакетхак. Обработка следующего пакета не начнется, пока не закончится обработка предыдущего. Код, который вы написали, присвоит переменной buf значение HStr('45 00 00 00 00 00 00 00 00 00'), а потом, сразу присвоит значения HStr('45 01 00 00 00 00 00 00 00 00'). И так будет каждый раз при приходе пакета HStr('1b 04 00 00 00'). Если вам важен порядок прихода пакетов, то вам надо вести их счет и ориентироваться по нему.