Привет, товарищи.
В общем очень долго гуглил сегодня, практически весь вечер потратил. Не получается разобраться с ресурсами.
Задача элементарная, держать иконки в .exe файле, не хочется рядом кидать картинки и таскать их за программой.
Но эти самые ресурсы упорно не хотят никуда встраиваться (судя по весу итогового .exe-файла), а если и встраиваются, то не отображаются на других компьютерах.
Я перепробовал почти все, что смог найти в поисковых системах, и ничего не помогло.
Итак, конкретнее.
Есть код:
#include <QtGui>
#include "nums_qt_gui.h"
int main(int argc, char *argv[])
{
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("Windows-1251"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("Windows-1251"));
QApplication::setStyle("plastique");
QApplication a(argc, argv);
Nums_Qt_Gui *numsGui=new Nums_Qt_Gui;
numsGui->setWindowIcon(QIcon(":/IconWillBe/Resources/math_number.jpg"));
numsGui->setWindowTitle("Технологии программирования, Лаб. 2");
numsGui->show();
return a.exec();
}
В ресурсах тестируемая иконка прописана:
<RCC>
<qresource prefix="/IconWillBe">
<file>Resources/math_number.jpg</file>
</qresource>
</RCC>
Работаю из под MSVS, поэтому все собирается автоматически, но все равно пробовал собирать через qmake, та же ерунда.
Кинуть в папку с программой qjpegd4.dll, отвечающий за обработку .jpg я уже пробовал (.dll вообще все какие можно пробовал).
Далее, пробовал собрать ресурсы (в данном случае иконку) в бинарный файл .rcc и добавить в код
QResource::registerResource("iconwillbe.rcc");
в соотстветствии с руководством.
В итоге что. У меня все работает нормально:
Скидываю на второй компьютер с той же ОС:
Буду благодарен за помощь, всем заранее лучи добра.