gpt4 book ai didi

c++ - 使用外部二进制资源

转载 作者:行者123 更新时间:2023-11-30 02:25:52 24 4
gpt4 key购买 nike

我在一个曾经有编译资源的项目上。

现在,用户可以选择他想要使用的主题。在那之前没有问题,在一些研究中我开始使用 External Binary Resource方法。

我的资源构建成功,QResource::registerResource("/path/to/myresource.rcc"); 返回 true。

虽然它不能正常工作。显然,编译资源仍然存在于可执行文件中。我看不到存储在我的外部二进制资源中的不同图标。

如何删除这个内置资源?我需要这样做才能正常工作吗?

最佳答案

假设您正在为项目使用 .pro 文件,您需要从 RESOURCES 列表中删除资源文件。如果您仍然希望它在您的项目中列出,您可以使用 OTHER_FILES

之前:

RESOURCES += file1.qrc file2.qrc

之后:

RESOURCES += file2.qrc
OTHER_FILES += file1.qrc

如果您想更进一步,您可以自动构建 qrc 文件:

RCC_BINARY_SOURCES += file1.qrc

asset_builder.commands = $$[QT_HOST_BINS]/rcc -binary ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT} -no-compress
asset_builder.depend_command = $$[QT_HOST_BINS]/rcc -list $$QMAKE_RESOURCE_FLAGS ${QMAKE_FILE_IN}
asset_builder.input = RCC_BINARY_SOURCES
asset_builder.output = $$OUT_PWD/$$DESTDIR/${QMAKE_FILE_IN_BASE}.qrb
asset_builder.CONFIG += no_link target_predeps
QMAKE_EXTRA_COMPILERS += asset_builder

OTHER_FILES += $$RCC_BINARY_SOURCES

关于c++ - 使用外部二进制资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43641837/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com