В qt 4.5 возможно ли иметь ресурсы в статически связанном плагине?

StackOverflow https://stackoverflow.com/questions/1207265

  •  05-07-2019
  •  | 
  •  

Вопрос

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

LIBS += -lstatic_plugin_with_resources

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

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

Это было полезно?

Решение

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

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

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top