Сервер TCP/IP NativeAPI на Delphi

Опубликовал Александр Мешков (AleSSandre) в раздел Программирование - Внешние компоненты

Внешняя компонента NativeAPI на Delphi запускает прослушивание заданного порта по протоколу TCP/IP.

При создании внешней компоненты использовались материалы:

ВК NativeAPI на Delphi и FreePascal (автор: Александр Соломатин ) и ВК для 1С:Предприятие 8.2 NativeAPI на Delphi (автор: Андрей Акулов).

Работа сервера организована на неблокируемых сокетах winsock.

Компонента имеет 2 свойства:

  • Порт - собственно сам порт, который будем прослушивать
  • Таймаут - таймаут отключения бездействующих сессий (в секундах)

и 2 функции:

  • Слушать() - начинает слушать указанный порт. Полученные данные компонента возвращает в виде строки во Внешнее событие 1С.
  • Отключиться() - обрывает все существующие соединения и отключает прослушивание.

Критика приветствуется, но ногами сильно не пинать, т.к. это по сути первый опыт создания как самих внешних компонент, так и работы в Delphi :)

SocketVK.epf - пример работы компоненты. Обработка запускает сам сервер, событие на порт генерируйте любым другим приложением.

Source.rar - Исходники.

Скачать файлы

Наименование Файл Версия Размер
SocketVK.epf
.epf 78,57Kb
10.11.16
5
.epf 78,57Kb 5 Скачать
Source.rar
.rar 10,70Kb
10.11.16
5
.rar 10,70Kb 5 Скачать

См. также

Комментарии
1. BigB (BigB) 155 14.11.16 20:43 Сейчас в теме
2. Олег (oleg_km) 16.11.16 10:33 Сейчас в теме
Да, велосипеды с квадратными колесами. Всего лишь нужно подключить .NET по методу Сергея Смирнова и вся мощь .NET к твоим ногам и не надо будет на каждый чих делать ВК.
4. Александр Мешков (AleSSandre) 5 16.11.16 17:36 Сейчас в теме
(2) oleg_km, (3) Serginio, несомненно, .NET - мощная вещь, но один минус - необходимость регистрации DLL с правами администратора.
Необходимо было обойтись без этого :)
5. Сергей Смирнов (Serginio) 513 16.11.16 17:58 Сейчас в теме
(4) Если ты посмотришь на вторую ссылку то там кроссплатформенный .Net Native.
Ну а так нужно зарегистрировать всего одну библиотеку.
6. Сергей Смирнов (Serginio) 513 17.11.16 14:29 Сейчас в теме
Кстати про регистрацию без прав администратора Регистрация ActiveX-DLL без прав администратора (UAC включен)

Можно выгрузить нужную ветку и заменить HKEY_LOCAL_MACHINE на HKEY_CURRENT_USER
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа