Помогите с переносом приложения... |
Здравствуйте, гость ( Вход | Регистрация )
Помогите с переносом приложения... |
defnull |
24.6.2009, 13:00
Сообщение
#1
|
Студент Группа: Участник Сообщений: 49 Регистрация: 1.5.2008 Пользователь №: 165 Спасибо сказали: 0 раз(а) Репутация: 1 |
Помогите пожалуйста с переносом приложения, совсем я отчаился сделать это своими силами, да и сроки горят настолько что там успеть бы хоть написать систему.. бьюсь уже который день и толку пока не особо. Вообщем есть WinXp виртуалка на которой стоит VS 2008 + Qt 4.4.3 + POstgresql 8.3.5 Компилировал если мне память не изменяет по дефолту (динамика как я понимаю) + плагин для работы с postgres. Приложение на этой виртуалке нормально работает с базой, тоесть никаких проблем с работой приложения на машине где разрабатываю не возникало. (Плагин подгружается динамически если что а НЕ статически через QIMPORT или как там оно пишется точно..)
Теперь пробую перенести на машину с голой XP. Что я туда кидаю:
Почему так много библиотек расскажу чуть ниже. Вообщем копируем это список на чистую XP, приложение загружается НО 1) при попытке залогиниться к базе пишет Driver not loaded 2) не грузиться иконка приложения Что я попытался сделать: 1) всевозможные вариации с sqldrivers и imageformats (клал и в plugins и просто в папку с приложением и прописывал path и добавлял чере addLibPath или как там оно) 2) пробовал блокировать доступ к Qt и POstgresql на машине где разрабатываю чтобы выяснить какие ещё библиотеки необходимы приложениею... в результате остановился на приведённом выше списке, хотя огромное количество библиотек postgresql без которых оно отказывается работать с драйвером очень удивляет 3) пытался выяснить через processexplorer необходимые dll и поставлять их на голую xp вместе с приложением... тоже труба=( 4) убивал ветки реестра вот кстати что пишет в созданных ветка в значение параметра например qsqlpsql4d.dll: 40403 1 Windows msvc debug full-config 2009-04-11T02:11:03 НО самое интересное что при всё при этом в реестре при данном наборе драйвера появляются (у троллей написано про кеширование, так вот они там показываются и обе папки определяются) НО почему-то приложение отказывается их загружать =(((( Вообщем я уже почти совсем отчаился... буду очень признателен если вы поможете мне распутать это клубок!! Документрацию на предмет работы с плагинами читал, форумы многие излазил но толку пока нету=((( Смущает меня так же что не грузиться и иконка приложения... тоесть не грузятся плагины в принципе =((( Сообщение отредактировал defnull - 24.6.2009, 13:12 |
|
|
SABROG |
24.6.2009, 13:33
Сообщение
#2
|
Профессионал Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: 34 |
Попробуй dependency walker. Он скажет какие библиотеки пытаются загрузиться не статически, а динамически. Будет писать что-то типа не удалось найти библиотеку, но на самом может всё находится, но не загружаться из-за ошибок возвращенных изнутри .dll
Скомпилируй программу с консолью как release: .pro файл
Запусти консоль (cmd), выполни команду:
Запусти свою программу из консоли и смотри какие ошибки будут писаться. Если есть подобное:
Значит у тебя программа в debug режиме собрана и идет попытка использовать плагины собранные в релизе. Попробуй поместить в ту же папку где программа файлик qt.conf с содержимым:
Соответственно должна быть папка plugin, а в ней папки: sqldrivers imageformats |
|
|
Текстовая версия | Сейчас: 27.12.2024, 22:50 |