QUIK 8.0

Страницы: 1
RSS
QUIK 8.0
 
Добрый день!

После обновления на версию 8.0 все индикаторы и скрипты, сделанные на Lua перестали работать, по скриптам пишет ошибку "bad header in precompiled chunk".

никаких dll или сторонних библиотек не используется в скриптах. Скрипты скомпилированы через стандартную команду:

luac -s -o "$(FileName).luac" "$(FileNameExt)"

Что надо сделать для работы?
trdrobot.ru
 
Добрый день.
Для корректной работы с *.luac файлами в терминале 8.0 необходимо исходные *.lua файлы скомпилировать x64 версией Luac.exe
Перед тем как задать вопрос, убедитесь, что решение Вашей задачи не описано в официальном мануале - 'Использование Lua в Рабочем месте QUIK.pdf' https://arqatech.com/upload/Public/quik_lua.zip
 
Цитата
Nikolay Pavlov написал:
Добрый день.
Для корректной работы с *.luac файлами в терминале 8.0 необходимо исходные *.lua файлы скомпилировать x64 версией Luac.exe
Т.е. для всех версий вплоть до 7.27 мне надо компилировать по старому. а для 8.0 отдельно компилировать x64 luac.exe

Очень удобно сделали и заранее предупредили главное всех о таком событии.

Скачал с сайта только что, в файле "Использование Lua на рабочем месте", ни слова нету про компиляцию.
trdrobot.ru
 
К сожалению, повторной компиляции скриптов под x64 не избежать, это последствия смены архитектуры терминала, т.к. в нем используется уже x64 интерпретатор Lua.
В документацию обязательно добавим информацию.
Перед тем как задать вопрос, убедитесь, что решение Вашей задачи не описано в официальном мануале - 'Использование Lua в Рабочем месте QUIK.pdf' https://arqatech.com/upload/Public/quik_lua.zip
 
Цитата
Nikolay Pavlov написал:
К сожалению, повторной компиляции скриптов под x64 не избежать, это последствия смены архитектуры терминала, т.к. в нем используется уже x64 интерпретатор Lua.
В документацию обязательно добавим информацию.
Конкретно вот этот компилятор годится для вашей новой архитектуры?:

https://sourceforge.net/projects/luabinaries/files/5.1.5/Tools%20Executables/lua-5.1.5_Win64_bin.zip...

Насколько я понял удобный пакет LuaForWindows не имеет в составе x64 компилятора (если имеет, то не могли бы дать ссылку).
trdrobot.ru
 
Цитата
Александр М написал:
Конкретно вот этот компилятор годится для вашей новой архитектуры?: https://sourceforge.net/projects/luabinaries/files/5.1.5/Tools%20Executables/lua-5.1.5_Win64_bin.zip....
Да, этот компилятор можно использовать (я использовал именно его). Что касается LuaForWindows, я не видел x64 сборку данного пакета, по данному вопросу могу посоветовать только обратиться к его разработчикам.
Перед тем как задать вопрос, убедитесь, что решение Вашей задачи не описано в официальном мануале - 'Использование Lua в Рабочем месте QUIK.pdf' https://arqatech.com/upload/Public/quik_lua.zip
 
Цитата
Nikolay Pavlov написал:
Цитата
Александр М написал:
Конкретно вот этот компилятор годится для вашей новой архитектуры?:  https://sourceforge.net/projects/luabinaries/files/5.1.5/Tools%20Executables/lua-5.1.5_Win64_bin.zip... .
Да, этот компилятор можно использовать (я использовал именно его). Что касается LuaForWindows, я не видел x64 сборку данного пакета, по данному вопросу могу посоветовать только обратиться к его разработчикам.
Спасибо за ответ, будем разбираться.
trdrobot.ru
 
Здравствуйте.

А если мне нужно использовать собственную dll как сделать x64 ?

В Visual Studio Платформу x64 выбрал, но не собирается, ругается:
Ошибка 2 error LNK2001: неразрешенный внешний символ "lua_tolstring"

Я так понимаю нужны другие файлы для x64
lauxlib.h
lua.h
lua5.1.lib
luaconf.h

Но где их взять? Подскажите.
 
Цитата
Павел написал:
А если мне нужно использовать собственную dll как сделать x64 ?
Добрый день.
Да для x64 необходимо скачать исходники для x64. Все доступно на официальном сайте http://luabinaries.sourceforge.net/
Проверялось для сборки Lua 5.1.4 - Release 2
Перед тем как задать вопрос, убедитесь, что решение Вашей задачи не описано в официальном мануале - 'Использование Lua в Рабочем месте QUIK.pdf' https://arqatech.com/upload/Public/quik_lua.zip
 
Библиотека собралась.

Что делал:

У меня Visual Studio 2013
На сайте выбрал Lua 5.1.4 - Release 2 (sources and Visual C++ 8/9 binaries only)
Далее Windows Libraries
И скачал lua-5.1.4_Win64_vc12_lib.zip

в Visual Studio изменил Release Win32 на Release x64 Собрал, ошибок не было.

Попробовал подключить dll библиотеку к скрипту через require("myNew");

Запустил скрипт и получил ошибку:
error loading module 'myNew' from file 'C:\QUIK_8.0.1\myNew.dll':
%1 не является приложением Win32.

Что я не так делаю?
 
Благодарю за помощь. Все получилось. Скорее всего это я уже где то что то напутал.
Удалил все и начал с самого начала, все получилось.

Пишу что делал, возможно кому то пригодится:
У меня Visual Studio 2013, на других версиях думаю так же, но не пробовал.
1. Создал проект и настроил его по инструкции (только файлы брал другие см.п.2, а так же см п.3) Сайт https://quikluacsharp.ru/qlua-c-cpp-csharp/konnektor-dll-quik-qlua-lua-c/ надеюсь ссылки на сторонние сайты можно размещать.
2. На сайте http://luabinaries.sourceforge.net/ выбрал "Lua 5.1.4 - Release 2 (sources and Visual C++ 8/9 binaries only)" Далее "Windows Libraries" и скачал "lua-5.1.4_Win64_vc12_lib.zip". Скаченные файлы разместил как сказано на сайте из п.1
3. В Visual Studio 2013, при настройке проекта, я изменил: Конфигурация Активная (Release) Платформа x64 (Создал через диспетчер конфигураций)
4. Код СИ скопировал для примера с того же сайта п.1
5. Проект успешно собрал, dll библиотека появилась.
6. Создал скрипт Lua, подключил через require. Запустил в QUIK 8.0.1.1 и все заработало.
 
Цитата
Павел написал:
Благодарю за помощь. Все получилось.
Рад был помочь.
Еще хотел бы поправить написанное мной выше, версия 5.1.4 это не последняя версия, есть еще патч 5.1.5 (https://sourceforge.net/projects/luabinaries/files/5.1.5/Windows%20Libraries/Static/ ), правильнее будет использовать его.
Проверял на Visual Studio 2015 пакет lua-5.1.5_Win64_dll15_lib.zip, все работает, библиотеки собираются.
Перед тем как задать вопрос, убедитесь, что решение Вашей задачи не описано в официальном мануале - 'Использование Lua в Рабочем месте QUIK.pdf' https://arqatech.com/upload/Public/quik_lua.zip
 
Установил 5.1.5 на Visual Studio 2013 - Все работает, библиотека собралась, в QUIK 8.0.1.1 скрипт запустился.

Скачал lua-5.1.5_Win64_vc12_lib.zip
 
Цитата
Еще хотел бы поправить написанное мной выше, версия 5.1.4 это не последняя версия, есть еще патч 5.1.5 (https://sourceforge.net/projects/luabinaries/files/5.1.5/Windows%20Libraries/Static/ ), правильнее будет использовать его.
Там несколько вариантов. Какой надо?
 
Цитата
Игорь Б написал:
Там несколько вариантов. Какой надо?
Смотря какой версией Visual Studio Вы будите компилировать, для 2015 я использовал lua-5.1.5_Win64_vc15_lib.zip. Выше Павел использовал 2013 версию и скачивал lua-5.1.5_Win64_vc12_lib.zip
Перед тем как задать вопрос, убедитесь, что решение Вашей задачи не описано в официальном мануале - 'Использование Lua в Рабочем месте QUIK.pdf' https://arqatech.com/upload/Public/quik_lua.zip
 
Компилирую как Александр М выше
Цитата
никаких dll или сторонних библиотек не используется в скриптах. Скрипты скомпилированы через стандартную команду:

luac -s -o "$(FileName).luac" "$(FileNameExt)"

Что надо сделать для работы?
Visual Studio для этого не использую.
Использую LuaForWindows_v5.1.4-46
Могу ли просто заменить скаченные файлы и дирректории в  LuaForWindows?
Если нет, то что можно сделать?
 
Цитата
Игорь Б написал:
Visual Studio для этого не использую.Использую LuaForWindows_v5.1.4-46
Для получения компилированного lua скрипта (*.luac) нужно скачать x64 luaс.exe, соответственно Вам нужно пройти по ссылке https://sourceforge.net/projects/luabinaries/files/5.1.5/Tools%20Executables/ и скачать lua-5.1.5_Win64_bin.zip.
Цитата
Игорь Б написал:
Цитата
Еще хотел бы поправить написанное мной выше, версия 5.1.4 это не последняя версия, есть еще патч 5.1.5 ( https://sourceforge.net/projects/luabinaries/files/5.1.5/Windows%20Libraries/Static/  ), правильнее будет использовать его.
Там несколько вариантов. Какой надо?
по данной ссылке выложены исходники для компиляции собственных dll, которые потом уже используются в lua скриптах.
Перед тем как задать вопрос, убедитесь, что решение Вашей задачи не описано в официальном мануале - 'Использование Lua в Рабочем месте QUIK.pdf' https://arqatech.com/upload/Public/quik_lua.zip
 
Цитата
Для получения компилированного lua скрипта (*.luac) нужно скачать x64 luaс.exe, соответственно Вам нужно пройти по ссылке https://sourceforge.net/projects/luabinaries/files/5.1.5/Tools%20Executables/ и скачать lua-5.1.5_Win64_bin.zip.
Спасибо. Работает.
 
Цитата
Павел написал:
А если мне нужно использовать собственную dll как сделать x64 ?
кросс-сборка на линупсе

мануал: http://lua-users.org/wiki/BuildingModules
Код
sudo apt install g++-mingw-w64-x86-64

для примера:

собираем некую либу my_lib:
Код
x86_64-w64-mingw32-gcc -I./lua5.1/src -ansi -pedantic -Wall -O2 -c -o lmy_lib.o lmy_lib.c
Код
x86_64-w64-mingw32-gcc -o my_lib.dll -shared lmy_lib.o -L. -llua5.1
при этом:

- каталог с исходниками lua5.1 лежит в текущем из https://sourceforge.net/projects/luabinaries/files/5.1.5/Docs%20and%20Sources/lua-5.1.5_Sources.tar....

- lua5.1.dll лежит в текущем каталоге из https://sourceforge.net/projects/luabinaries/files/5.1.5/Tools%20Executables/lua-5.1.5_Win64_bin.zip...

- рядом с -L. точка, те текущий каталог
 
Замечательно. А что делать тем у кого 32 разрядная система? Всё что отстроено годами, теперь всё это ломать по вашей милости?
 
Цитата
Иван Сидоров написал:
Замечательно. А что делать тем у кого 32 разрядная система? Всё что отстроено годами, теперь всё это ломать по вашей милости?
вас не более 10% - это демократия :)
 
Цитата
новичок написал:
Цитата
Иван Сидоров написал:
Замечательно. А что делать тем у кого 32 разрядная система? Всё что отстроено годами, теперь всё это ломать по вашей милости?
вас не более 10% - это демократия :)

Да ну, это откуда такие данные? А я думаю что 50 на 50.
 
Цитата
Иван Сидоров написал:
Да ну, это откуда такие данные?
https://www.extremetech.com/computing/267180-nvidia-ends-support-for-32-bit-operating-systems

Цитата
Иван Сидоров написал:
А я думаю
а вот это  - вряд ли
 
Цитата
Иван Сидоров написал:
А что делать тем у кого 32 разрядная система?
А для вас ничего не изменилось. Вы сидите на 7.27 и ничего менять не нужно. Красота.
 
Более не поддерживается Win XP?
"Не поддерживается" = "работать вообще не будет" или "фиг знает, больше на XP не тестируем, ничего не гарантируем, не фиксим"
 
Цитата
sergei написал:
Более не поддерживается Win XP?"Не поддерживается" = "работать вообще не будет"
Наверное дело в том что новая версия х64.
а WinXP - х32.  
 
Цитата
Imersio Arrigo написал:
а WinXP - х32.  
https://ru.wikipedia.org/wiki/Windows_XP_Professional_x64_Edition
 
Никогда такого не видел.
Слышал что умельцы ухитрялись заводить хр с ядром от 2003-64 сервера, но незнаю насколько это правда. Ибо кроме ядра нужен 64битный юзерспейс.
 
Цитата
Imersio Arrigo написал:
Никогда такого не видел.
абсолютно обычная тема была для предприятий
у мну сохранилась и офф iso,  и ключ ..
само собой есть и в сети на торрентах

людей не хотящих из ХР валить можно понять, тк валить можно только на линукс
а им скилл не позволяет.

ткчт моя их понимает, но не жалеет .. (имею право)
 
Цитата
новичок написал:
Цитата
Imersio Arrigo написал:
Никогда такого не видел.
абсолютно обычная тема была для предприятий
у мну сохранилась и офф iso,  и ключ ..
само собой есть и в сети на торрентах

людей не хотящих из ХР валить можно понять, тк валить можно только на линукс
а им скилл не позволяет.

ткчт моя их понимает, но не жалеет .. (имею право)
Я Win XP ставлю через VirtualBox на Ubuntu. Кроме QUIK там нет ничего из соображений безопасности.Через WINE кривовато почему-то получалось, когда несколько лет назад я решение проблемы искал.
Насколько знаю, сам QUIK до недавнего времени работал только на Windows + существовал сильно урезанный по функциональности WebQUIK.

Недавно один из брокеров (ПСБ) стал бросать в сообщения Квика, что у них также есть версии для MacOS и Android. Наверно, это новьё.
А под сам Линукс, походу, Квик еще не портировали, иначе нафиг мне была бы нужна поддержка XP.

Короче, соблюдаю первый программерский принцип - "не трогай то, что работает" :) Как нашел несколько лет назад решение Ubuntu - Virtual Box - WinXP, так до сих пор заморачиваться с обновлением своих познаний не приходилось.
 
Цитата
sergei написал:
для MacOS
iOS
Цитата
sergei написал:
А под сам Линукс, походу, Квик еще не портировали,
и не собирались, даже лозунг есть на заглавной форума
Цитата
sergei написал:
первый программерский принцип - "не трогай то, что работает"
"не нужно чинить то, что не сломано ..." (с)

только не понятно к чему сии чистосердечные признания.

Цитата
Imersio Arrigo написал:
Ибо кроме ядра нужен 64битный юзерспейс.
"дрова" даже нужнее оказались :)

мфц/винАпи был - квик бы мог работать видимо - может запробую в виртуалке как-нить.
 
Цитата
новичок написал:
"дрова" даже нужнее оказались :)
Ну, во-1-х поставить дров и юзерспейс не противоречит никак.
во-2-х, я в линухе долго жил на 64х ядре, с 32х юзерспейсом. Сначала было РАЕ-шное ядро, потом заменил на 64.
А на 64-либы переехал только тогда когда обнаружил что виртуалбокс 32хбитный не работает с 64хбитными модулями ядра.

Цитата
sergei написал:
Через WINE кривовато почему-то получалось
Может "вы не умеете их готовить"?
 
Цитата
Nikolay Pavlov написал:
Цитата
Павел написал:
Благодарю за помощь. Все получилось.
Рад был помочь.
Еще хотел бы поправить написанное мной выше, версия 5.1.4 это не последняя версия, есть еще патч 5.1.5 ( https://sourceforge.net/projects/luabinaries/files/5.1.5/Windows%20Libraries/Static/  ), правильнее будет использовать его.
Проверял на Visual Studio 2015 пакет lua-5.1.5_Win64_dll15_lib.zip, все работает, библиотеки собираются.
У меня не получается собрать почему-то

Собираю VC Enterprise 2015

библиотеку беру lua-5.1.5_Win64_vc15_lib.zip

собираю проект  release x64 :  dll с многобайтовой кодировкой

при сборке виду кучу неразрешенных внешних символов типа feof в функции getF  или freopen в функции luaL_loadfile.
как понимаю, это имена из lua5.1.lib и дело в разрядности сборки.

тыкните пальцем, куда смотреть, пжлста....
 
Отвечу сам себе, раз все молчат.

Надо не полагаться ни на кого, надо брать исходники и медленно спускаться с горы  и не торопясь собирать все с нуля - сначала библиотеку, потом длл....
 
Цитата
s_mike@rambler.ru написал:
У меня не получается собрать почему-тоСобираю VC Enterprise 2015библиотеку беру lua-5.1.5_Win64_vc15_lib.zipсобираю проект  release x64 :  dll с многобайтовой кодировкойпри сборке виду кучу неразрешенных внешних символов типа feof в функции getF  или freopen в функции luaL_loadfile.как понимаю, это имена из lua5.1.lib и дело в разрядности сборки.
Добрый день.
В итоге у Вас получилось собрать? Какую библиотеку собираете, собственную или общедоступную?
Зачастую просто поменять Lua-шные исходники в проекте не достаточно, нужно проверить все линки в настройках проекта.
Перед тем как задать вопрос, убедитесь, что решение Вашей задачи не описано в официальном мануале - 'Использование Lua в Рабочем месте QUIK.pdf' https://arqatech.com/upload/Public/quik_lua.zip
 
Цитата
Nikolay Pavlov написал:
Цитата
   s_mike@rambler.ru написал:
У меня не получается собрать почему-тоСобираю VC Enterprise 2015библиотеку беру lua-5.1.5_Win64_vc15_lib.zipсобираю проект  release x64 :  dll с многобайтовой кодировкойпри сборке виду кучу неразрешенных внешних символов типа feof в функции getF  или freopen в функции luaL_loadfile.как понимаю, это имена из lua5.1.lib и дело в разрядности сборки.
Добрый день.
В итоге у Вас получилось собрать? Какую библиотеку собираете, собственную или общедоступную?
Зачастую просто поменять Lua-шные исходники в проекте не достаточно, нужно проверить все линки в настройках проекта.
взял исходники Lua 5.1.5, собрал их в модели 64, проверил.  Вроде нормально,  работу работают.

после чего на основе получившейся .lib скомпоновал свою dll.  Тоже на первый взгляд удачно. Время покажет насколько.

все остальные библиотеки и способы, в том числе те,  на которые здесь были ссылки,  не собрались нормально.  
 
Цитата
s_mike@rambler.ru написал:
все остальные библиотеки и способы, в том числе те,  на которые здесь были ссылки,  не собрались нормально.  
Возможно это особенность dll, которую Вы собираете, но гадать можно бесконечно не имея исходников.
Главное, что в итоге библиотека собралась.
Перед тем как задать вопрос, убедитесь, что решение Вашей задачи не описано в официальном мануале - 'Использование Lua в Рабочем месте QUIK.pdf' https://arqatech.com/upload/Public/quik_lua.zip
 
Очень грустно что разработчики поставили людей перед фактом. Или работай в старой но у тебя не будет ни УДС ни части другой информации или переходи в новую но вместо торговли бегай в поисках тех у кого покупал модули, которые облегчали тебе работу. Такое отношение к клиенту у Вас проходит только потому что Вы монополисты, если бы была возможность то плюнул бы на все удобства quik и ушел бы в другую систему. Вы похоже зазвездились. Жалко.
 
Цитата
Юрий написал:
Очень грустно что разработчики поставили людей перед фактом. Или работай в старой но у тебя не будет ни УДС ни части другой информации или переходи в новую но вместо торговли бегай в поисках тех у кого покупал модули, которые облегчали тебе работу. Такое отношение к клиенту у Вас проходит только потому что Вы монополисты, если бы была возможность то плюнул бы на все удобства quik и ушел бы в другую систему. Вы похоже зазвездились. Жалко.
Добрый день.

Это вопрос расстановки приоритетов в условиях ограниченного ресурса: можно тратить время и силы на производство, тестирование, документирование и сопровождение двух параллельных платформ, но в таком случае ресурса на дальнейшее развитие терминала (в том числе и реализацию многочисленных пожеланий пользователей) не останется. В таких условиях выбор приоритетов был очевиден. В то же время мы, конечно, понимаем те затруднения, с которыми столкнулись пользователи нашего продукта, и со своей стороны прикладываем все усилия для того, чтобы помочь их разрешить.
 
Добавил в архив тестовый пример DLL на C++ для QUIK 8 (x64)
Там же можно взять .lib-файл для сборки своих проектов

https://quik2dde.ru/viewforum.php?id=14
 
С квиком 7семеркой брокер обнуляет безопасность. Ну нормально, 10 процентов выкинули с рынка. когда итак торговать некому. все ушли играть в футбол. Вообще ребята, нечего тратить время на квик, особенно  по построению заморочек к нему, только настроишь и тут же все неимоверные  сизифовы труды обнулят по соображениям , как там выше, ресууурса..
 
Цитата
Аркадий написал:
С квиком 7семеркой брокер обнуляет безопасность
Добрый день.

Это не так от слова совсем. По всей видимости Вы поняли своего брокера не верно.
 
Цитата
s_mike@rambler.ru написал:
взял исходники Lua 5.1.5, собрал их в модели 64, проверил.  Вроде нормально,  работу работают.

после чего на основе получившейся .lib скомпоновал свою dll.  Тоже на первый взгляд удачно. Время покажет насколько.

все остальные библиотеки и способы, в том числе те,  на которые здесь были ссылки,  не собрались нормально.  

алгоритм другой должен быть, либина вообще-то по уму должна быть от квиковской lua, а не от общедоступной. они немного отличаются.

алгоритм:
1. получаем список функций экспорта библиотеки, где lua5.1.dll - библиотека из поставки quik 8.0
dumpbin.exe  /EXPORTS lua5.1.dll  > lua5.1.exports

2. форматируем файлик .exports, оставляя только имена функций и добавляя сверху одно слово EXPORTS, пример
EXPORTS
is_proxy_dll
luaA_pushobject
luaC_barrierback
...

3. меняем расширение .exports на .def

4. создаём lib:
lib.exe  /def:lua5.1.def  /machine:x64 /out:lua5.1.lib

я использовал утилиты из состава MSVC:
MSVC\2017\Community\VC\Tools\MSVC\14.14.26428\bin\Hostx64\x64\
Страницы: 1
Читают тему (гостей: 1)
Наверх