问题描述
我需要将 exe 作为资源添加到另一个 exe。 我正在使用 Windows。 我在 CMake 中尝试了很多我在谷歌上找到的东西,但是当我在 CFF 资源管理器上编译和链接后打开 exe 时,我什么也没看到。
我尝试了以下方法:
add_executable(ExecutableTarget
main.c
hello.exe)
set(RESOURCE_FILES
hello.exe)
set_target_properties(ExecutableTarget PROPERTIES
MACOSX_BUNDLE TRUE
MACOSX_FRAMEWORK_IDENTIFIER org.cmake.ExecutableTarget
RESOURCE "${RESOURCE_FILES}")
有人可以帮我吗?
解决方法
通常,如果您需要将程序拆分成不同的部分来解决不同的问题,您应该使用动态库(dll 文件),而不是分离的 exe。通常,只有 1 个可执行文件和多个 dll 文件包含解决不同问题的函数或类。如果只需要运行exe尽量只使用system("")函数来调用exe,则无需将其作为cmake资源。也许你可以把它放在一个文件夹里,以便简单地定位它。
要链接 dll,请参阅此答案: Link shared dll