Как установить поддержку сокетов в скриптах QUIK ?

Страницы: 1
RSS
Как установить поддержку сокетов в скриптах QUIK ?
 

У меня версия QUIK 8.9.0.107

Версия LUA 5.3

Раньше использовал сокеты подключая их командой

socket=require("socket")

После переустановки QUIK выдается сообщение

module 'socket' not found:

Подскажите, пожалуйста, где мне скачать и как установить нужную библеотеку, что бы можно было пользоваться сокетами?

 
Я у себя сделал так:

1) создал в папке терминала подпапку socket и положил туда файл core.dll, который взял отсюда:
https://github.com/finsight/QUIKSharp/blob/master/src/QuikSharp/lua/clibs64­/53_MD/socket/core.dll

2) в папке с lua-скриптами создал папку lib, куда положил файл socket.lua, который взял отсюда:
https://github.com/finsight/QUIKSharp/blob/master/src/QuikSharp/lua/socket.lua
(в этой же папке ещё и другие файлы библиотек лежат)


3) в скриптах пишу
Код
local socket = require("lib.socket")

Возможно, есть какие-то другие способы.
 

Сделал, как вы написали. Не заработало.

Стабильно в QUIK на команду

local socket = require("lib.socket")

возникала ошибка

error loading module 'socket.core' from file 'C:\Open_Broker_QUIK\socket\core.dll':

               Не найден указанный модуль.

Потратил три дня. Перепробовал разные варианты.

Стал гуглить и читать форумы.

В этой ветке эту проблему тоже обсуждают

https://github.com/finsight/QUIKSharp/issues/201

И предлагают какие то непонятные танцы с бубном с подменой файла lua5.1.dll

Но по их методике ошибка у меня не исчезла.

В итоге методом тыка и перебора всех вариантов проблему решил следующим образом.

Сокеты начали работать.

1)      Скачал отсюда файл core.dll размером 177152 байт

https://github.com/finsight/QUIKSharp/tree/master/src/QuikSharp/lua/clibs64­/5.1_MT/socket

Это ссылка на тот же сайт что вы дали, но вместо 5.1_MD я качаю 5.1_MT

2)      В папке C:\Open_Broker_QUIK\ создал папку socket

3)      Положил туда core.dll размером 177152 байт скачанный на шаге 1)

4)      В скрипте LUA сокеты подключаю командой socket=require("socket.core")

Никаких других действий не делал. package.path и package.сpath не менял.

Вашего шага 2 тоже не делал.

Подскажите, чем отличаются файлы?

https://github.com/finsight/QUIKSharp/blob/master/src/QuikSharp/lua/clibs64­­/53_MD/socket/core.dll

Размер 52224. Эту библиотеку подключить не получилось.

И

https://github.com/finsight/QUIKSharp/blob/master/src/QuikSharp/lua/clibs64­­/53_MT/socket/core.dll

размером 177152 байт, с которой нормально заработали сокеты на LUA 5.3

 
Отличаются режимами сборки
Для /MD  требуется еще установленный Microsoft Visual C++ Redistributable соответствующей версии (в зависимости от версии Visual C++, в котором собирали). Ну либо установленный MS Visual C++ соответствующей версии.
 
В связи с выходом QUIK 8.11 становится актуальным файл core.dll для socket для Lua 5.4.1.

Также mime.dll и ssl.dll надо искать, но уже для других целей.
 
Кто-нибудь из знающих товарищей может либо подсказать, как это делается, либо просто скомпилировать и выложить на форум socket core.dll для Quik 8.11 и Lua 5.4.1?
 
Цитата
_sk_ написал:
подсказать, как это делается
Хотел было, но Диего любит наворотить в проекте нетривиальностей, что в двух словах не объяснишь, так что проще самому собрать (не тестировано вообще никак, может и нерабочее получилось).
 
Проверил socket core.dll, вроде работает. Спасибо большое!
 
Всем привет.
_sk_, не подскажете в какой из файлов, или какой функцией задаются адрес и порт Socket сервера и какой функцией отправить данные на него?
Как вообще можно установить соединение? У меня имеется WebSocket сервер на php, хочу на него отправлять данные из Quik.
Я выполнил ваши рекомендации, но дальше не могу разобраться, хотя роботов на lua пишу.
 
Евгений, вот кусок кода на LUA для подключения к серверу.
Код
socket=require("socket.core")
tcp = socket.tcp()
tcp:settimeout(1)
local host, port = "127.0.0.1", 1020
if tcp:connect(host, port) then
   print("connect OK "..host..":"..port)
else
   print("connect Error")
end
...
tcp:close()


Сервер у меня на Delphi 7
 
Ну у кого квик не начинал падать с этой библиотекой? Я скачал версию с сайта из сообщения https://forum.quik.ru/messages/forum10/message50431/topic5986/#message50431
В момент старта через минуту Квик может упасть, полноценно и с дампом.
 
Цитата
_sk_ написал:
Проверил socket core.dll, вроде работает. Спасибо большое!
А можете выложить? Ссылка уже нерабочая.
 
Цитата
foobar написал:
Ссылка уже нерабочая.
https://dropmefiles.com/u0bWK
 
Спасибо. 5.4 работает стабильнее чем 5.3. Перевёл таблицу текущих котировок на lua/сокеты c DDE. Пока полёт нормальный.
 
Цитата
Anton написал:
Цитата
foobar написал:
Ссылка уже нерабочая.
 https://dropmefiles.com/u0bWK
А можете ещё раз выложить?
 
Цитата
0b0yv написал:
ещё раз
https://dropmefiles.com/bAGAF
Страницы: 1
Читают тему (гостей: 2)
Наверх