В qt 4.5 возможно ли иметь ресурсы в статически связанном плагине? - PullRequest
1 голос
/ 30 июля 2009

У меня есть собственный модуль плагина QT, который имеет встроенные ресурсы. Я хочу статически связать этот плагин с приложением:

LIBS += -lstatic_plugin_with_resources

В приложении я использую макрос Q_IMPORT_PLUGIN(), который позволяет приложению использовать плагин; однако плагин не может получить доступ к встроенным ресурсам.

Использование плагина в качестве общей библиотеки работает.

1 Ответ

3 голосов
/ 30 июля 2009

Это возможно. В приложении вам нужно явно инициализировать ресурсы, содержащиеся в статическом плагине.

Это достигается путем вызова Q_INIT_RESOURCE(resource_base_name), где resource_base_name - это базовое имя файла .qrc, в котором указаны ресурсы. Вероятно, это следует вызывать в main () или при запуске приложения. При желании вы можете позвонить Q_CLEANUP_RESOURCE(), если плагин больше не используется.

См. Последний раздел документа QT 4.5 resource . Также см. Документацию для Q_INIT_RESOURCE.

Это сработало для меня на Linux-версии QT 4.5.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...