Как удаленно запускать и останавливать Lua - скрипты из сторонней программы?
Вывожу данные через LUA - скрипт и UDP - Сокет в скринер написанный на С. Возник вопрос: есть ли вариант запуска и остановки LUA - скриптов сторонней программой? Придумал костыльный вариант остановки(через запись ключевого слова в текстовый файл) и еще более костыльный вариант запуска(через HWND окна). Может можно как-то стартануть скрипт, например через изменения реестра, ini - файла, может Хексом библиотеку какую-нибудь подправить и т.д.???
Коллеги, есть ли код для имитации ds? Суть кода: прочитать данные из файла csv и присвоить прочитанное ds, чтобы читалось так же, как и createdatasource.
Здравствуйте!
Периодически вылетает ошибка: "Необработанное исключение по адресу
0x000007F9EC5C9D19 (ntdll.dll) в info.exe: 0xC0000374: Куча была повреждена
(параметры: 0x000007F9EC61E5F0)". Часто если в коде lua указано: "sleep(1)".
Ошибка чтения в точке "lua_pushstring(L, (char*)(pb))".
Как её избежать?
1
2
lua_pushstring(L,(char*)(pb));for(int i =0; i <256; i++)pb[i]='\0';
1
2
3
QluaCSharpConnector.SendQuote(Quote);
local CommandStr = tostring(QluaCSharpConnector.GetCommand());
sleep(1);
Microsoft Visual Studio Enterprise 2015
Версия 14.0.24720.00 Update 1
Microsoft .NET Framework
Версия 4.6.01055
Здравствуйте!
Периодически вылетает ошибка: "Необработанное исключение по адресу
0x000007F9EC5C9D19 (ntdll.dll) в info.exe: 0xC0000374: Куча была повреждена
(параметры: 0x000007F9EC61E5F0)". Часто если в коде lua указано: "sleep(1)".
Ошибка чтения в точке "lua_pushstring(L, (char*)(pb))".
Как её избежать?
1
2
3
4
...
lua_pushstring(L, (char*)(pb));
for (int i = 0; i < 256; i++)pb[i] = '\0';
...
1
2
3
4
5
...
QluaCSharpConnector.SendQuote(Quote);
local CommandStr = tostring(QluaCSharpConnector.GetCommand());
sleep(1);
...
Microsoft Visual Studio Enterprise 2015
Версия 14.0.24720.00 Update 1
Microsoft .NET Framework
Версия 4.6.01055
Здравствуйте товарищи! При экспорте данных из квика самый длительный этап - ожидание их поступления при заказе с сервера:
1
ds:SetEmptyCallback()-- вот эта штучка
Экспортирую данные графиков, порядочно. При повторном запуске экспорта хотелось бы пропустить графики, по которым не появилось новых данных с момента предыдущего экспорта, чтобы не тратить несколько секунд на заказ данных.
Кто-нибудь решал эту проблему?
Я пробую использовать параметры инструмента из таблицы всех сделок. Сохраняю несколько значений, полученных на момент заказа данных графика, отакие вот:
1
2
3
4
5
6
TRADE_DATE_CODE -- Дата торговTIME-- Время последней сделки
LAST -- Цена последней сделки
VALUE -- Оборот в деньгах последней сделки
CHANGETIME -- Время последнего изменения
STATUS -- Если торговался на момент заказа данных то всегда заказываю данные заново
Если при следующем запуске они отличаются - тогда подписываюсь на график и уже смотрю конкретно, что поменялось. Но это костыль, может есть какая-то хитрость или отточенный способ, или я что-то в доке пропустил?
Добрый день!
1. А вы учли, что при дисконекте и повторном соединении нужно отписаться от источников и подключить их заново, иначе данных просто не будет?
2. Обезличенные сделки брокеры любят не транслировать, т.е. такой костыль априори не подходит.
3. Графики, это зрительный обман и ничего более, если очень нужно - стройте свои, на основании таблицы обезличенных сделок, тогда думать нужно будет только о пункте 2.
4. Если по другому никак, то OnParam вам в руки, подписываетесь на параметр "оборот" и если он не ноль, то сделки есть и нужно подключить источник.
Вопрос решился? Я тоже самое с тиками пытаюсь сделать, если подключаюсь в 14.00, данные через CreateDataSource по всем инструментам грузит за всё предыдущее время. Прогоняю в цикле Size, пока он не будет равен предыдущему, только потом считываю нужные мне данные, очень костыльно как-то получается. OnAllTrade работает лучше, но идет нагрузка на проц и каждые полчаса Квик дисконектит.
Привет народ, кто-нибудь собирал LuaSQLite3.dll для работы со скриптом? Я нашел в интернетике уже собранные неизвестным мне человеком, но там может быть все что угодно внутри зашито, хотелось бы самому собрать. Кто может что подсказать посоветовать? Может где-то на сайте уже есть?
Как удаленно запускать и останавливать Lua - скрипты из сторонней программы?
Вывожу данные через LUA - скрипт и UDP - Сокет в скринер написанный на С. Возник вопрос: есть ли вариант запуска и остановки LUA - скриптов сторонней программой? Придумал костыльный вариант остановки(через запись ключевого слова в текстовый файл) и еще более костыльный вариант запуска(через HWND окна). Может можно как-то стартануть скрипт, например через изменения реестра, ini - файла, может Хексом библиотеку какую-нибудь подправить и т.д.???
Коллеги, есть ли код для имитации ds? Суть кода: прочитать данные из файла csv и присвоить прочитанное ds, чтобы читалось так же, как и createdatasource.
Как в QLua закрыть файл по его полному пути+имени (строка)?
Допустим, файл уже был открыт до запуска скрипта, тогда
как закрыть этот файл с именем FileFullName (строковое)?
Здравствуйте!
Периодически вылетает ошибка: "Необработанное исключение по адресу
0x000007F9EC5C9D19 (ntdll.dll) в info.exe: 0xC0000374: Куча была повреждена
(параметры: 0x000007F9EC61E5F0)". Часто если в коде lua указано: "sleep(1)".
Ошибка чтения в точке "lua_pushstring(L, (char*)(pb))".
Как её избежать?
Microsoft Visual Studio Enterprise 2015
Версия 14.0.24720.00 Update 1
Microsoft .NET Framework
Версия 4.6.01055
lua5.1.lib
Здравствуйте!
Периодически вылетает ошибка: "Необработанное исключение по адресу
0x000007F9EC5C9D19 (ntdll.dll) в info.exe: 0xC0000374: Куча была повреждена
(параметры: 0x000007F9EC61E5F0)". Часто если в коде lua указано: "sleep(1)".
Ошибка чтения в точке "lua_pushstring(L, (char*)(pb))".
Как её избежать?
1
2
3
4
...
lua_pushstring(L, (char*)(pb));
for (int i = 0; i < 256; i++)pb[i] = '\0';
...
1
2
3
4
5
...
QluaCSharpConnector.SendQuote(Quote);
local CommandStr = tostring(QluaCSharpConnector.GetCommand());
sleep(1);
...
Microsoft Visual Studio Enterprise 2015
Версия 14.0.24720.00 Update 1
Microsoft .NET Framework
Версия 4.6.01055
lua5.1.lib
Здравствуйте товарищи! При экспорте данных из квика самый длительный этап - ожидание их поступления при заказе с сервера:
Экспортирую данные графиков, порядочно. При повторном запуске экспорта хотелось бы пропустить графики, по которым не появилось новых данных с момента предыдущего экспорта, чтобы не тратить несколько секунд на заказ данных.
Кто-нибудь решал эту проблему?
Я пробую использовать параметры инструмента из таблицы всех сделок. Сохраняю несколько значений, полученных на момент заказа данных графика, отакие вот:
Если при следующем запуске они отличаются - тогда подписываюсь на график и уже смотрю конкретно, что поменялось. Но это костыль, может есть какая-то хитрость или отточенный способ, или я что-то в доке пропустил?
Добрый день!
1. А вы учли, что при дисконекте и повторном соединении нужно отписаться от источников и подключить их заново, иначе данных просто не будет?
2. Обезличенные сделки брокеры любят не транслировать, т.е. такой костыль априори не подходит.
3. Графики, это зрительный обман и ничего более, если очень нужно - стройте свои, на основании таблицы обезличенных сделок, тогда думать нужно будет только о пункте 2.
4. Если по другому никак, то OnParam вам в руки, подписываетесь на параметр "оборот" и если он не ноль, то сделки есть и нужно подключить источник.
Вопрос решился? Я тоже самое с тиками пытаюсь сделать, если подключаюсь в 14.00, данные через CreateDataSource по всем инструментам грузит за всё предыдущее время. Прогоняю в цикле Size, пока он не будет равен предыдущему, только потом считываю нужные мне данные, очень костыльно как-то получается. OnAllTrade работает лучше, но идет нагрузка на проц и каждые полчаса Квик дисконектит.
Привет народ, кто-нибудь собирал LuaSQLite3.dll для работы со скриптом? Я нашел в интернетике уже собранные неизвестным мне человеком, но там может быть все что угодно внутри зашито, хотелось бы самому собрать. Кто может что подсказать посоветовать? Может где-то на сайте уже есть?
Посмотрите в "Статьи участников" LUA_SHARE от Тохи, это вам подойдет, быстро и надежно.
Я потратил время на поиск в проекте LUA_SHARE того, что мне поможет разобраться со сборкой sqlite3.dll, зачем вы так делаете не спрашиваю
я где то упомянул, что вы там найдете что-то, что поможет вам разобраться с sqlite? претензии вашему учителю русского языка предъявляйте.
а я уже хотел написать, что погорячился. Мой вопрос касался сборки sqlite3 для луа, поэтому логично было предположить. А вы еще и грубите
где то - через дефис)