crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Проблема с dll-ками Qt
All
  опции профиля:
сообщение 10.9.2009, 1:25
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 3
Регистрация: 10.9.2009
Пользователь №: 1072

Спасибо сказали: 0 раз(а)




Репутация:   0  


Здравствуйте всем.

Пишу проект по сетевому программированию на Win32 API. Классы Qt(версия 4.5.0) использую только как вспомагательные (QString, QDomDocument и т.д.), к проекту подключаю библиотеки QtCore4.lib, QtXml4.lib, на своей машине все компилируется и запускается.

Дальше захотел отладить сетевое взаимодействие своей программы через виртуальную машину. Скинул на виртуалку копию исполняемого файла и необходимые библиотеки (QtCore4.dll, QtXml4.dll), в таблице импорта и экспорта модулей данные длльки видемы, и проходят тест на подключение. При попытке запуска программы у тотала выскакивает сообщение "Программа не запускается", explorer выдает сообщение "This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem".

Стал ковырятся в настройках компилятора, поменял параметр Runtime Library c /Multi-thread DLL (/MD) на /Multi-thread (/MT), программа стала запускатся, но появилась ошибка "The application failed to initialize properly (0xc0150002). Click on OK to terminate the application". Стал проверять на других компах, на одном компе те же самые ошибки, на другом все нормально (Qt на них небыло установленно).

Написал тестоваю програмку только с одной функцией LoadLibrary( "QtCore4.dll"), там где были ошибки LoadLibrary возвращал ошибку, при этом функция GetLastError возвращала код ошибки 14001.
В MSDN'е 14001 - ERROR_SXS_CANT_GEN_ACTCTX (The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log for more detail.)

Кто чем может помогите.....

Забыл еще сказать, если из исходников исключить переменные и указатели ссылающих на классы Qt, то ошибки пропадают.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Litkevich Yuriy
  опции профиля:
сообщение 11.9.2009, 16:09
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(All @ 11.9.2009, 5:15) *
На моем компе в переменных окружениях Qt упоминается только как path=..\qt\4.5.0\bin
У меня в этой переменной окружения вообще Qt нет, однако работать программам не мешает

Цитата(All @ 11.9.2009, 5:15) *
явной ссылки на каталог с плагенами - \plugins нет
есть в QtCore.dll явный путь к каталогу, где установлена/собрана Qt (это упомянуто в указанной мною статье)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


6 чел. читают эту тему (гостей: 6, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.12.2024, 17:55