Проблема с использованием системы ресурсов |
Здравствуйте, гость ( Вход | Регистрация )
Проблема с использованием системы ресурсов |
groove |
24.2.2008, 21:39
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 24.2.2008 Пользователь №: 104 Спасибо сказали: 0 раз(а) Репутация: 0 |
С помощью дизайнера создаю форму, добавляю для нее файл ресурсов, в которых запихиваю картинки.
Затем эти самые картинки использую в виджетах формы. Как бы я не использовал ресурсы (компилировал в бинарник приложения, либо подключал как внешние ресурсы), на другой машине всегда картинки пропадают. На той где компилируется - все ок, а стоит попробовать под другой ОС - так обязательно проблема. Никто не сталкивался? |
|
|
ViGOur |
24.2.2008, 22:54
Сообщение
#2
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
Покажи файл ресурсов.
К чему ты цепляешь картинки и каким образом? Какая версия Qt и компилятор? Поподробней опиши свои действия... Сообщение отредактировал ViGOur - 24.2.2008, 23:15 |
|
|
Litkevich Yuriy |
25.2.2008, 0:30
Сообщение
#3
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
groove, Не забудь что путь к ресурсам начинается с двоеточия:
|
|
|
groove |
26.2.2008, 11:52
Сообщение
#4
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 24.2.2008 Пользователь №: 104 Спасибо сказали: 0 раз(а) Репутация: 0 |
Вот тестовый проект: http://ifolder.ru/5502423
Ресурсы берутся из внешнего файла. Если запускать на машине, где нет Qt, тогда картинка на форме отображена не будет, если запускать там же где и компилировалось, то все OK. Для запуска на чистой машине потребуются файлы: mingwm10.dll, QtCore4.dll, QtGui4.dll. Версия Qt: 4.3.2, OpenSouce Edition. Бря сборку TrollTech. Версия MinGW: MinGW-3.2.0. |
|
|
Litkevich Yuriy |
26.2.2008, 18:31
Сообщение
#5
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
уменя была такая проблема:
скомпилил на виндовозе, картинки задуманы читатся при запуске приги из предопределенного каталога, если каталог таскаю с бинарем по виндовозовским тачкам, то все путем, пересобрал в Лине, картинок нет, путь был указан к ним так:
зделал так:
все за работало, и в Лине и Виндовозе Сообщение отредактировал Litkevich Yuriy - 26.2.2008, 18:31 |
|
|
groove |
27.2.2008, 8:46
Сообщение
#6
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 24.2.2008 Пользователь №: 104 Спасибо сказали: 0 раз(а) Репутация: 0 |
уменя была такая проблема: скомпилил на виндовозе, картинки задуманы читатся при запуске приги из предопределенного каталога, если каталог таскаю с бинарем по виндовозовским тачкам, то все путем, пересобрал в Лине, картинок нет, путь был указан к ним так:
зделал так:
все за работало, и в Лине и Виндовозе Тут в пределах одной ОС нифига не работает. |
|
|
AD |
4.3.2008, 10:06
Сообщение
#7
|
Профессионал Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17 |
Та же проблема. Не отображаются картинки, если запускаю на другой машине. Путь указываю, чтобы отображалось полный, т.е., например, D:/Projects/Src/TransasLogViewer/Images/open.png.
На той машине, что компилю, все отображаются. P.S. exe-файл лежит вот здесь D:\Projects\Win32\Bin\Release\TransasLogViewer\TLV.exe, либо D:\Projects\Win32\Bin\Debug\TransasLogViewer\TLV.exe |
|
|
Litkevich Yuriy |
4.3.2008, 13:26
Сообщение
#8
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
AD22,
Нельзя абсолютный путь указывать, это большие грабли, либо относительно приложения, либо с ситемными переменными (актуально для линуха) groove, Вообщем попробывал я твою прогу посмотреть в профилеровщике, ня своей машине (есть Qt) и на VMWare (нет Qt), сравнил логи, на моей машине в логе есть такие строчки: Цитата LoadLibraryW("F:/Qt/4.3.2/plugins/imageformats/qjpeg4.dll") called from "QTCORE4.DLL" at address 0x101134F5. Loaded "QJPEG4.DLL" at address 0x017C0000. Successfully hooked module. DllMain(0x017C0000, DLL_PROCESS_ATTACH, 0x00000000) in "QJPEG4.DLL" called. DllMain(0x017C0000, DLL_PROCESS_ATTACH, 0x00000000) in "QJPEG4.DLL" returned 1 (0x1). LoadLibraryW("F:/Qt/4.3.2/plugins/imageformats/qjpeg4.dll") returned 0x017C0000. GetProcAddress(0x017C0000 [QJPEG4.DLL], "qt_plugin_instance") called from "QTCORE4.DLL" at address 0x101143F5 and returned 0x017C13B0. а на другой машине в логе нет таких строчек, положил qjpeg4.dll в каталог с бинарем, эфект тотже, ни картинки ни таких строчек в логе. Надо думать как это плагин прицепить. Сообщение отредактировал Litkevich Yuriy - 4.3.2008, 14:45 |
|
|
Litkevich Yuriy |
4.3.2008, 15:57
Сообщение
#9
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
БЛИН, я тут открытие совершил, у менято тоже проблема, svg-рисунки нечитаются, jpeg неиспользую, png читаются нормально
-- вобщем новая тема: Как распространять, программы использующие Qt-плагины? Сообщение отредактировал Litkevich Yuriy - 4.3.2008, 16:06 |
|
|
Litkevich Yuriy |
8.3.2008, 22:21
Сообщение
#10
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
groove, твое заработало, после некоторых экспериментов смотри пост
|
|
|
Текстовая версия | Сейчас: 3.1.2025, 1:43 |