Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Компьютеры связаны COM порту [D6, Win95/98, NT4]


Pankov ©   (2003-02-13 10:03:00) 

Как перехватить набор данных пересылаемых программой с одного компьютера программе другого по COM порту. Можно ли перехватить данные своей программой? Получающая программа создает файл *.dat каждые 5 сек. Можно ли использовать этот файл?


Digitman   (2003-02-13 10:21:00) [1]

Вполне можно.
Самый простой случай - процесс-передатчик и процесс-приемник работают с портом через ф-ции файлового ввода/вывода, т.е. доступ к порту этими процессами осуществляется станд.средствами Wi32API - CreateFile(), ReadFile()/WriteFile().
Для такого случая достаточно внендрить в контролируемые процессы ф-цию, реализующую перехват вызываемых этими процессами библиотечных ф-ций ядра kernel32.ReadFile()/WriteFile().
Обработка перехваченных таким образом вызовов сведется к анализу параметров (имя устройства = "COM1", адрес буфера вв/выв - такой-то, размер буфера - такой-то, размер реально переданных/принятых данных после возврата из ф-ций такая-то)


Наверх

Титульная страница Поиск, карта сайта Написать письмо