是否可以 link 一个 exe 文件作为一个 lib 文件到另一个项目?

is it possible to link an exe file as a lib file to another project?

问题在标题里。

我编写了一个.exe项目,我想在另一个项目中使用这个项目的功能之一。

也许这是一个愚蠢的问题,但如果可能的话,这将限制我的解决方案中的项目数量...

我进行了简单的尝试,但出现了 LNK1107 错误。

我会说这不可能,但在网上很难找到明确的答案。

不,不可能。

可执行文件是一个独立的实体。它是 link 将目标文件组合在一起以生成自包含的可执行文件的结果。

将两个可执行文件链接在一起,充其量只会导致 main 的重复定义(实际上它有点复杂,但是......)。

您想要做的是在目标文件成为可执行文件之前共享它们,这通常是通过将您的shared/common代码移动到"library" 然后 link 将库放入两个项目中。

或者,您可以将可执行文件全部分开,但在版本控制级别共享代码,例如使用 SVN 外部组件。