Название: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: Physicist от Май 04, 2010, 20:36 Доброго времени суток!
Столкнулся с проблемой: не отображаются иконки (на кнопочках, в шапке окна и т.д...) при запуске в Windows XP. Изначально проект компилировался в VS2008 под Windows 7 x64. Иконки храню как ресурсы. Под семеркой все отлично отображается, запуская из любой папки... Вообщем создал простой проект: QMainWindow в который помещен QLabel. У QMainWindow иконку устанавливаю из ресурсов, а у QLabel pixmap устанавливаю из внешнего файла (ico). После того как откомпилил (по Windows 7) все нормально отображается. Затем скопировал исполняемый модуль, необходимые dll и файл с иконкой в отдельную папку... И снова все работает прекрасно! Далее, копирую эту самую папку в голую Windows XP... запускаю... в итоге - иконки не отображаются!!! (Пробывал и под Windows XP x64 и под Windows XP x86) В чем дело никак не пойму... Сам раньше работал с Qt3 и с подобными проблемами не сталкивался... Вот код test.ui: Код: <?xml version="1.0" encoding="UTF-8"?> test.qrc: Код: <RCC> содержимое папки для запуска в Windows XP: test_portable:
Быть может кто-нить сталкивался с подобной проблемой? Прилагаю проект под VS2008 и ту самую папку "portable" версии для windows XP: http://www.letitbit.tv/files/55102/test_sln.zip (http://www.letitbit.tv/files/55102/test_sln.zip) http://www.letitbit.tv/files/55108/test_portable.zip (http://www.letitbit.tv/files/55108/test_portable.zip) Заранее огромное спасибо за помощь! Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: Sancho_s_rancho от Май 04, 2010, 21:30 Насколько я помню, в куте графические форматы через плагины. Вам необходимо таскать с собой плагины и прочитать документацию о qt.conf.
Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: Physicist от Май 05, 2010, 00:08 Насколько я помню, в куте графические форматы через плагины. Вам необходимо таскать с собой плагины и прочитать документацию о qt.conf. Да, про плагины я забыл... Но чет так и не получается их зацепить: Сначала попробывал скопировать в папку с исполняемым модулем папку плагина imageformats (как описано тут: http://wiki.crossplatform.ru/index.php/Развертывание_приложений_Qt_в_MS_Windows (http://wiki.crossplatform.ru/index.php/Развертывание_приложений_Qt_в_MS_Windows)) Но картинок так и нет ... Добавил в каталог с exe-файлом файл qt.conf: Код: [Paths] НО эффекта ноль (( Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: voronElf от Май 05, 2010, 05:36 мне помогло :
Код: QApplication app( argc, argv ); плагины лежат в папке plugins/imageformats для грфики, plugins/sqldrivers для бд Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: Sancho_s_rancho от Май 05, 2010, 06:42 Насколько я помню, в куте графические форматы через плагины. Вам необходимо таскать с собой плагины и прочитать документацию о qt.conf. Добавил в каталог с exe-файлом файл qt.conf:Код: [Paths] НО эффекта ноль (( Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: p166 от Май 05, 2010, 09:31 В PNG их переведи.
Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: garryHotDog от Май 05, 2010, 16:05 Цитировать В PNG их переведи. с Png 100% работает, сам сталкивался с такой проблемой, теперь все храню в png!!!Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: Physicist от Май 05, 2010, 18:53 хм... png конечно попробую... но тут уж дело принципа ))
Кстати, сегодня запустил на машине, на которой установлена VS2008 и нет Qt.. Все прекрасно отобразилось! мне кажется здесь что-то со связкой: plugins - mcvs runtime libs Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: Physicist от Май 05, 2010, 19:12 мне помогло : Код: QApplication app( argc, argv ); плагины лежат в папке plugins/imageformats для грфики, plugins/sqldrivers для бд хм... попробывал - не проканало... Добавил эти строчки в main: - да. setCurrent отработал и при запуске из под VS 2008 пришлось переместить из папки проекта в папку с исполняемым модулем файл иконки... Но при запуске из-под winXP ни одна из картинок не оторазилась (папки plugins/imageformats естественно скопировал в папку с exe как тут указывалось) Все сильнее думаю на CRT... Может быть кто-нить попробует на голой XP развернуть проект и потом отпишется о том - какие crt-юзал, что куда копировал и т.д... Спасибо за все ответы. Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: Physicist от Май 06, 2010, 09:57 наткнулся на статью: http://doc.crossplatform.ru/qt/4.3.2/deployment-windows.html (http://doc.crossplatform.ru/qt/4.3.2/deployment-windows.html)
Согласно ей: Цитировать Для связывания библиотек времени выполнения с вашим приложением скопируйте каталог <Visual Studio Install Path>\VC\redist\<Architecture>\Microsoft.VC80.CRT в каталог с вашим исполняемым файлом, так что вы включили каталог Microsoft.VC80.CRT поблизости от исполняемого файла вашего приложения. Если связали библиотеки времени выполнения и к том уже нужно развернуть подключаемые модули, то из подключаемых модулей вам нужно удалить манифест (встроенный как ресурс) добавив это в pro-файл подключаемых модулей, которые вы компилируете: CONFIG-=embed_manifest_dll Если этого не сделать подключаемые модули нельзя будет загрузить на некоторых системах. Получается мне нужно перекомпилить плагины из imageformats, добавив в их pro-файлы строчку CONFIG-=embed_manifest_dll ? И вообще, это похоже на мой случай? Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: ufna от Май 06, 2010, 12:05 подожди, у тебя иконки не пашут когда ты из-под MSVS запускаешь или когда?
что конкретно у тебя лежит и как в папке, которую ты пихаешь на чистую систему? Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: Physicist от Май 07, 2010, 00:09 подожди, у тебя иконки не пашут когда ты из-под MSVS запускаешь или когда? что конкретно у тебя лежит и как в папке, которую ты пихаешь на чистую систему? иконки не пашут на чистой системе содержимое папки для запуска на чистой системе:
Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: ufna от Май 07, 2010, 01:39 я бы посоветовал сделать release сборку, а не debug
и сделай так, чтобы было не imageformats/qicod4.dll а plugins/imageformats/qicod4.dll и сразу после создания QApplication в мейне сделай: Код
Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: Physicist от Май 07, 2010, 02:19 думаю нет никакой разницы в этом вопросе между release и debug... (но попробую... чем черт не шутит)
По поводу переноса imageformats в plugins/imageformats: я уже проделывал эту процедуру... та же лажа - иконок нет... Фишка в том, что как только я пытаюсь запустить прогу не на чистой тачке, а на тачке с установленной VS2008 (без Qt), то все выше предложенные решения начинают прекрасно работать! А вот если ограничиться установкой на чистую тачку пакета VS2008 redist , приложение вообще отказыватеся запускаться. Ежели как делаю я: из тачки с установленной VS2008 тащу на чистую тачку в каталог приложения папку Microsoft.VC90.DebugCRT (взятую из c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\redist\Debug_NonRedist\) то приложение запускается, а иконки не отображаются... Хм.. впрочем щас задумался: смущает название каталога Debug_NonRedist Возможно вы и правы и обязательно нужна release версия... Лады завтра попробую relese и отпишусь... Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: Physicist от Май 07, 2010, 02:39 Фуф... проблему решил:
пересобрал плагин для иконок, добавив в pro-файл строчку: CONFIG-=embed_manifest_dll. После этого сформировал папку как описал в предыдущих постах Осталось теперь понять, что за зверь этот такой (в чем его суть) - манифест =) А так.. заработало! ) Название: Re: отображение иконок в Windows 7 и Windows XP, проблема с отбражением в XP Отправлено: Physicist от Май 07, 2010, 11:27 Получилось и с VS2008 redist.
Действительно, release версия проканала! ) |