|
Как организовать прослушивание TCP-порта (tcp-server в 1С)? | ☑ | ||
---|---|---|---|---|
0
Moriarti
27.05.10
✎
16:28
|
Возникла задача получения событий из линуксовой телефонной станции в 1С 8.1. Линуксоиды сказали, что без проблему смогут организовать отправку tcp-пакетов.
Как бы в 1С организовать прослушивание определенного tcp-порта и обработку входящего пакета? |
|||
1
Jstunner
27.05.10
✎
16:31
|
я ВК написал для этого
|
|||
2
sezhik
02.06.10
✎
18:02
|
(1) а что ВК умеет? Только слушать или передавать тоже?
|
|||
3
sezhik
02.06.10
✎
18:04
|
(0) я использовал компоненту gnslisten.dll правда есть в ней опеделенного рода глюки.
|
|||
4
Ковычки
02.06.10
✎
18:26
|
все украдено до Вас
|
|||
5
sezhik
02.06.10
✎
18:36
|
(4) к чему?
|
|||
6
Ковычки
02.06.10
✎
19:46
|
(4) к ответу
|
|||
7
Dzenn
гуру
02.06.10
✎
19:54
|
(27) предполагаю, что нужна внешняя компонента. Но вот какая - хз. Возможно, она даже есть в списке ActiveX компонент, хотя вряд ли.
|
|||
8
Dzenn
гуру
02.06.10
✎
19:55
|
(7) к (0)
|
|||
9
Ковычки
02.06.10
✎
19:55
|
(7) она есть в списке оцх от мс
|
|||
10
Ковычки
02.06.10
✎
19:57
|
хотя по сабжу - линуксоидов за я... вешать и повыше
есть общепринятое логирование и для лин и для вин |
|||
11
sezhik
02.06.10
✎
20:25
|
Вопрос к Jstunner ВК можете поделится? Если она конечно умеет send and recieve?
|
|||
12
Moriarti
07.06.10
✎
16:58
|
Вроде бы получилось при помощи ocx контрола MS WinSock.
Работающий пример взял с http://www.rapidshare.ru/1511141, вкратце: 1) Устанавливается MSWINSCK.ocx 2) Лицензируется 3) Reboot 4) Кидаем на форму Microsoft Winsock Control Ну и всё! Port = 7788; WinSock = ЭлементыФормы.WinSock; WinSock.LocalPort = Port; WinSock.Bind(Port, "127.0.0.1"); WinSock.listen(); Сообщить("Установлено прослушивание порта "+Строка(Port)); И события на компоненте: Процедура WinSockDataArrival(Элемент, bytesTotal) WinSock = ЭлементыФормы.WinSock; Текст = ""; WinSock.GetData(Текст); Сообщить("Получена строка:" +Текст); Winsock.SendData("Привет от сервера :)"); КонецПроцедуры Процедура WinSockConnectionRequest(Элемент, requestID) WinSock = ЭлементыФормы.WinSock; Сообщить("Приконнектился "+WinSock.RemoteHostIP); Если WinSock.State <> 0 Тогда WinSock.Close() КонецЕсли; WinSock.Accept(requestID); КонецПроцедуры Отлично работает!!!! |
|||
13
Ковычки
08.06.10
✎
20:46
|
а линуксоидов из (0) всеже подвешай за яй...
|
|||
14
Moriarti
09.06.10
✎
06:56
|
(13) Зачем?
У них свои задачи, у меня свои, все довольны :-) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |