Здравствуйте, гость ( Вход | Регистрация )
|
ssdmt |
9.11.2009, 10:43
Сообщение
#1
|
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 9.11.2009 Пользователь №: 1214 Спасибо сказали: 0 раз(а) Репутация: 0
|
Всем знатокам Qt однозначно привет!!! ))
Входные данные: ------------------------- первое - у меня есть проект dll библотеки в Qt. второе - в этой dll экспортируется ф-ия extern "С" CMyClass* CreateDynamicMyClass(); ,которая динамически создаёт класс CMyClass третье - этот класс(CMyClass) наследуется от QTcpServer и имеет СИГНАЛЫ и СЛОТЫ, т.е. макрос Q_OBJECT ;) четвёртое - если filename.exe(тестовый проект без QCoreApplication - ПОЛНОСТЬ ГОЛЫЙ только LoadLibrary и GetProcAddress, console applic.) компилирую gcc, функция CreateDynamicMyClass() возвращает объект CMyClass и из него отрабатывает метод start() пример: CMyClass* class = dll->CreateDynamicMyClass(); // думаю мысль понятна :) class->start(); // ВСЁ ОТРАБАТЫВАЕТ КОРРЕКТНО!!! пятое - если filename.exe скомпилировать в Visual Studio 2008(так же полность "голый"), то всё - при вызове class->start() .. start имеет адресс по которому нельзя обратиться - код ошибки 5! .. ВОПРОСЫ: - кто нибудь сталкивался с такой ситуацией? почему таблица виртальных функций слетает?? в Visual Studio? P.S. не предлагать компилить в gcc, так как проект сам в Visual Studio и собрать его с помощью gcc просто нереально :( ... идея моя в том, чтобы сделать dll-qt библиотеку в которая даёт класс для работы с сокетами! для VisualStudio проекта! .. вот кто поможет на сотыч кину 200 руб ;) |
|
|
|
![]() |
|
rnd |
9.11.2009, 21:45
Сообщение
#2
|
|
Студент ![]() Группа: Участник Сообщений: 54 Регистрация: 22.7.2009 Пользователь №: 930 Спасибо сказали: 1 раз(а) Репутация: 0
|
вот хорошая статья про dll в windows: Link
|
|
|
|
ssdmt динамическая загрузка Qt dll-библиотеки в filename.exe проекте собранном в VisualStudio 2008 9.11.2009, 10:43
Litkevich Yuriy обычно нельзя смешивать программы/dll Qt собраные ... 9.11.2009, 11:22
ssdmt Цитата(Litkevich Yuriy @ 9.11.2009, 13:22... 9.11.2009, 11:29
DmP Цитата(ssdmt @ 9.11.2009, 11:29) ваще кап... 9.11.2009, 12:01
ssdmt если в dll я сделаю видимыми ф-ии уже логики класс... 9.11.2009, 12:39
DmP Цитата(ssdmt @ 9.11.2009, 12:39) если в d... 9.11.2009, 13:02![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 15.12.2025, 3:30 |