QUIK 8 и компиляция luasql

Страницы: 1
RSS
QUIK 8 и компиляция luasql
 
Добрый день.

С переходом на 64 бита нужно перекомпилировать DLLки.
Кто-нибудь уже скомпилировал Luasql под 64 бита? Можете поделиться? Интересует mysql.dll и libmysql.dll.
 
Добрый день.
Я пробовал скомпилировать через make файл, но лезут ошибки линковки целевой платформы. Хотя делалось все под окружением x64.
Остается вариант сконвертировать проект VS6 под VS2015-2017 и собирать, меняя зависимости. Он есть в исходниках.
Но напрямую он не конвертируется, слишком старая версия. Видел собщение, что надо делать через VS2010, т.к. более поздние версии не конвертируют проект.
 
Вернулся к вопросу. Скомпилировал драйвер ODBC, т.к. он мне больше всего нужен.
Что пришлось менять:
В файле ls_odbc.c пришлось заменить определение окружения на _WIN64.
Пришлось заменить тип SQLINTEGER на SQLLEN, т.к. в библиотеке ODBC 64 другие типы.

Также надо удалить все файлы *.obj, т.к. они собраны для x86.

После библиотека собралась.
Даже запустился скрипт, работающий под x86.

Но, пришлось переписать код обхода курсора на итератор. Прямой обход приводит к ошибке.
Но даже это не долго живет, Квик падает без слов через секунд 10-20 работы.

SQL Profiler показывает, что запросы идут нормально, ошибок нет. В те несколько секунд, что успевает отработать скрипт, данные стакана выводятся в окно исправно.
Но падает Квик всегда.

Что может быть, драйвер или все же Квик? Этот же драйвер под 7 Квик работает исправно.

Возможно, как писали в одной из веток, надо еще и lua5.1.dll самому собирать. Есть подозрение, что некорректно обрабатываются таблицы в луа стеке.

Если кто захочет попробовать:
https://github.com/nick-nh/qlua/tree/master/luasql
 
Вопрос разработчикам: как можно посмотреть лог термнала, чтобы понять от чего происходит падение программы при использовании библиотеки?
 
Nikolay,
В терминале нет такого лога.
Однако при падении, по идее должен создаваться dmp файл в папке dmp
При должном умении, можно попробовать проанализировать его самостоятельно, однако лучше прислать его нам.
 
Куда отправлять?
 
Цитата
Nikolay написал:
Куда отправлять?
quiksupport@arqatech.com
 
Попробовал еще раз. Файлы dmp не формируются. В папке есть два файла от прошлых запусков. Отправлю их.
Ошибка такого рода:

Имя события проблемы: APPCRASH

 Имя приложения: info.exe

 Версия приложения: 8.0.3.14

 Отметка времени приложения: 5d282989

 Имя модуля с ошибкой: StackHash_f988

 Версия модуля с ошибкой: 6.3.9600.19304

 Отметка времени модуля с ошибкой: 5c7f684f

 Код исключения: c0000374

 Смещение исключения: PCH_9D_FROM_ntdll+0x0000000000090D0A

 Версия ОС: 6.3.9600.2.0.0.16.33

 Код языка: 1049

 Дополнительные сведения 1: f988

 Дополнительные сведения 2: f9888e0a087b444ad5df05a65c8fed35

 Дополнительные сведения 3: 9540

 Дополнительные сведения 4: 954017ff240795f447e29bd8d973bef5

Но далее все интереснее. При возникновении ошибки, я попробовал запустить отладку приложения.
Получил сообщение об ошибке в ntdll.dll
Закрыл сообщение и запустил продолжить выполнение приложения. Вернулся в окно Квика и он продолжил работать как будто ничего не произошло. Скрипт работает.

Далее останавливаю скрипт и получаю еще раз эту же ошибку. Опять в отладе нажимаю продолжить и возвращаюсь в окно терминала, он работает, выведя сообщение:

LuaVM closed with error

Снимки экрана приложу в письме.

 
Возвращаюсь к вопросу.
Тех. поддержка ответила (Падение Quik 8.0.3.14 (CQ02527163)), что ошибка в файле alltrade.dat.
Но это явно не оно. Т.к. удаление файла не приводит к другому поведению. Квик 8 стабильно падает без дампов.
Сделал простой тестовый скрипт, стабильно работающий в 7-ой версии с 32 битной библиотекой, но приводящий к падению Квика 8 с 64 битной.
Причем падает непостоянно в одном месте, то при выборке из базы данных, то, что более странно, при вызове getQuoteLevel2.

https://yadi.sk/d/abcYTS_w9TQoQQ
 
Добрый день.
Потребуется еще архив рабочего места на момент падения QUIK. Без ключей доступа.
 
Все проверялось на свежеустановленной демо версии 8.0.3.14. Или нужна именно локальная копия для исключения влияния среды исполнения?
 
Цитата
Nikolay написал:
Все проверялось на свежеустановленной демо версии 8.0.3.14. Или нужна именно локальная копия для исключения влияния среды исполнения?
Нужна версия на которой проблема. Т.е упал QUIK и нужно сделать копию,поместить в архив и отправить нам на support@quik.ru
Страницы: 1
Читают тему
Наверх