Russian Qt Forum
Ноябрь 25, 2024, 02:52 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Проблема подключения к Qt-программе DLL, написанных на Builder  (Прочитано 2576 раз)
TYuD
Гость
« : Январь 15, 2014, 18:51 »

Пишу программу на Qt (Qt5.2, MinGW, WinXP). К ней подключаются Dll-ки, написанные, как на Qt, так и на C++Builder. DLLки писал как пустышки-заглушки, с минимальным функционалом для отладки. Пользовался QLibrary. Проблемы не возникали.

Но вот написал код для подключения новой ДЛЛки. И подключил существующую ДЛЛку, написанную на Билдере, которую используем уже много лет. Программа рушится. Причем в разные моменты времени. Иногда половину просчитает, но чаще раньше падает. То ошибку плавающей запятой вывалит, то еще какую..

Рушится даже если не выуживаю из ДЛЛки и, соответсвенно, не использую ни одну из импортируемых функций. Только делаю QLibrary::load.

Заново создал ДЛЛку-пустышку на Билдере. Рушится. Потом создал аналогичную пустышку на Qt. Не рушится. Потом убрал QLibrary, а вместо нее использую LoadLibrary. Перестали рушится Билдеровские пустышки.

На радостях запустил толстую ДЛЛку - опять рушится. Вычистил эту ДЛЛку до функций-пустышек - все равно рушится. Сделал еще один проект ДЛЛ на Билдере с пустышками, но с поддрежкой VCL(как и основная, толстая ДЛЛ) - рушится. Т.е. как бы виновата VCL?

Уже не знаю что и делать. Задача оч. ответсвенная. Помогите, пожалуйста.

Заметил странную особенность, что DllEntryPoint из ДЛЛки вызывается много раз, цепляясь не только к процессу, но и к потокам. Причем к потокам цепляется как-то странно, количество прицепов существенно не совпадает с количеством отцепов. Иногда вначале начинает отцепляться, хотя до этого не прицеплялся. Так должно быть?
Записан
alex312
Хакер
*****
Offline Offline

Сообщений: 606



Просмотр профиля
« Ответ #1 : Январь 15, 2014, 19:01 »

...Так должно быть?
ДА !, Должно .
« Последнее редактирование: Январь 15, 2014, 19:06 от alex312 » Записан
TYuD
Гость
« Ответ #2 : Январь 16, 2014, 22:45 »

В ДЛЛке на Билдере убрал поддержку VCL и поменял файловый ввод/вывод с fstream на fopen. Теперь не падает. Надолго ли?
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.096 секунд. Запросов: 23.