Пытаюсь сделать Shared DLL в котором будут сохраняться стандартные диалоги.
Раньше с DLL не работал, потому прошу помощи разобраться, может я что-то не так делаю.
Пользуюсь сборкой Qt отсюда
http://qt.nokia.com/downloads/windows-cpp-vs2008значит создаю в библиотеке пустой виджет унаследованный от QDialog, бросаю на него любые объекты и объединяю их лейаутом..
создаю программу для теста, подключаю в нее либу делаю кнопку по которой создаеться этот диалог и вызываеться exec().
После создания обьекта при попытке удалить объект класса прога вылетает с ошибкой.
Заметил что все работает если закоментировать ui.setupUi(this); но пройдя дебагером по функции setupUi не получаю ошибок.
могу попробовать создавать все объекты вручную, но объектов много и удобнее их редактировать через ui и еще хотелось бы понять в чем причина.
Прилагаю пример длл и программы в прикреплениях.
DLL импортирую так:
#ifndef SHAREDDLL_GLOBAL_H
#define SHAREDDLL_GLOBAL_H
#include <Qt/qglobal.h>
#ifdef SHAREDDLL_LIB
# define SHAREDDLL_EXPORT Q_DECL_EXPORT
#else
# define SHAREDDLL_EXPORT Q_DECL_IMPORT
#endif
#include <QDialog>
class SomeDialog : public QDialog
{
public:
SHAREDDLL_EXPORT SomeDialog(QWidget *parent = 0);
};
#endif // SHAREDDLL_GLOBAL_H