1 / 1 / 0
Регистрация: 24.12.2009
Сообщений: 4
|
|
1 | |
Вторую неделю пытаюсь подружить Lua и BCB6, и наблюдаю их несовместимость24.12.2009, 17:00. Показов 1693. Ответов 5
Вторую неделю пытаюсь подружить Lua и BCB6, и наблюдаю их несовместимость. Простой пример:
Код
os.exit() Но это только частично решает проблему. Для Lua существует множество модулей, написанных на Си и поставляемых в виде DLL, например, с Lua for Windows. Все они используют msvcr80.dll и, таким образом, становятся для нас непригодными. А среди них есть и весьма полезные. Вопрос. Можно ли как-нибудь избежать использования двух run-time библиотек одновременно при использовании сишных модулей? Боюсь, что вопрос риторический...
0
|
24.12.2009, 17:00 | |
Ответы с готовыми решениями:
5
Пытаюсь выполнить задачу уже вторую неделю С помощью компонента IBDataSet в BCB6 пытаюсь выполнить запрос... Пытаюсь использовать lua и haskell которую неделю пытаюсь залить свой сайт на различные бесплатные хостинги, |
1856 / 713 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
24.12.2009, 21:04 | 2 |
Не знаю, у меня функция os.exit() работает как надо(приложение убивается).
Ради проверки, попробуй-ка мою программку для редактирования субтитров. Там менюшка "Скрипт"/"Скрипт". В диалоговом окне впиши os.exit() и нажми "запустить скрипт".
1
|
1856 / 713 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
24.12.2009, 21:50 | 3 |
Кстати, MqKnJt, а ты выполнил инициализацию библиотечных функций с помощью luaL_openlibs();?
0
|
1 / 1 / 0
Регистрация: 24.12.2009
Сообщений: 4
|
|
24.12.2009, 22:27 [ТС] | 4 |
Otaka, да, действительно os.exit() работает как надо. Но если запустить скрипт, использующий внешние бинарные модули, слинкованные с msvcr80.dll, то твое приложение упадет. Я, конечно, понимаю, что твое приложение для этого не предназначено, но я, возможно, буду использовать библиотеки из Lua for Windows.
Если у тебя есть время/желание, могу по шагам расписать как воспроизвести этот глюк.
Эта ошибка вылетает в lua_close(); когда освобождается память. Конечно.
0
|
1856 / 713 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
|
|
24.12.2009, 23:06 | 5 |
Таки да, валится. Как-нибудь потом буду смотреть что ему можно сделать.
0
|
1 / 1 / 0
Регистрация: 24.12.2009
Сообщений: 4
|
|
25.12.2009, 11:28 [ТС] | 6 |
Otaka, если нароешь что-нибудь, отпишись здесь, пожалуйста.
Я думаю, причина в том, что приложение и внешние модули используют разные RTL. На данный момент я вижу только одно решение - перекомпилировать Lua и все сишные библиотеки Борландом, чтобы все использовали одну борландовскую RTL. Но это геморрой. Я вчера списался с ребятами из Lua for Windows, спросил, как бы перекомпилить всё. Они говорят, не знаем, мы используем уже готовые бинарники от поставщиков. Они все используют msvcr80.dll. Но, с другой стороны, они говорят, что работают с LuaDist чтобы LfW можно было бы скомпилить любым компилятором в будущих версиях. Х.з. что у них получится и когда...
0
|
25.12.2009, 11:28 | |
25.12.2009, 11:28 | |
Помогаю со студенческими работами здесь
6
Вторую неделю подряд рандомно вылетает синий экран В массиве записан курс евро за 14 дней. Определить минимальное значение курса за первую неделю и максимальное за вторую Наблюдаю Lua наследование, lua ооп Иногда наблюдаю феномен Наблюдаю разную выдачу по ф5 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |