Pergunta

Eu tenho um costume QT módulo plugin que tem incorporado recursos. Eu quero estaticamente vincular este plugin com um aplicativo:

LIBS += -lstatic_plugin_with_resources

Na aplicação que estou usando a macro Q_IMPORT_PLUGIN(), que permite que o aplicativo para usar o plugin; no entanto, o plugin não pode acessar seus recursos incorporados.

Usando o plugin como uma biblioteca compartilhada funciona.

Foi útil?

Solução

É possível. No aplicativo que você precisa para inicializar explicitamente os recursos que estão contidos no plugin estática.

Isso é feito chamando o Q_INIT_RESOURCE(resource_base_name) , onde resource_base_name é o nome de base do arquivo .qrc que especifica os recursos. Isso provavelmente deve ser chamado em main () ou na inicialização do aplicativo. Opcionalmente você pode chamar Q_CLEANUP_RESOURCE() se o plugin não está mais sendo usado.

Veja a última seção do QT 4,5 recurso doc . veja também a documentação para Q_INIT_RESOURCE .

Isso funcionou para mim na versão Linux do QT 4.5.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top