В этой статье мы будем разбирать связь двух приложений с помощью именных каналов (named pipes). Рассмотрим типы каналов, а также создадим клиент и
сервер.
1.Для чего именные каналы нужны:
Именные каналы являются средством «общения» программ. Они широко используются в UNIX-подобных системах, однако и в Windows они нашли применение. С помощью именных каналов можно передать любую информацию, так как все каналы работают через файлы. Даже для чтения\записи данных в канале используется функция WinAPI для работы с файлами – ReadFile() и WriteFile(). Передаваться может переменная любого типа (Integer, Boolean, Tbitmap и так далее). Однако, надо заметить, что для передачи строки, она должна быть ограничена – String[40]; Иначе при чтении канала будет появляться ошибка.
2. Пример отправляемой переменной:
Далее в статье я буду использовать отправляемую переменную типа TpipeData, этот тип будет такой:
Code: |
type TpipeData = packed record //Имя можно изменить, а тип packed record оставьте pEvent:byte; ClientName: string[40]; //Заметьте, ограниченная строка Date:TdateTime; End; |
Как я уже сказал, здесь можно передавать любые переменные
- Назад
- Вперёд >>
Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.
ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!