1

我有一个 vb.net 项目,其中包含 2 个构建的 exe 以及安装程序。这两个 exe 共享一堆公共文件。我不想拥有两个通用文件的副本,也不想让构建事件来复制周围的东西(如果可能的话)。

我的方法是在同一个文件夹中创建两个项目,并让它们指向他们需要的文件。这似乎有效,直到我尝试编译这两个应用程序,此时我在名为 Application.Designer.vb 的文件中收到错误。似乎项目文件在他们的文件夹中创建了这个文件,当我在同一个文件夹中有两个解决方案时,它们会发生冲突。

所以我的下一个努力是在它自己的文件夹中创建第二个项目,并根据需要添加项目。这里的问题是 VS2010 不保存指向不同文件夹中文件的链接,它将文件复制到新的项目文件夹中。

vs2010 完成此任务的方法是什么?

4

2 回答 2

3

You were almost there when you created your second project. Rather than adding the files to the second project, you need to link them.

When you add them, VS copies the source file to the current project's directory.

When you link a file, it leaves it in its current location and just adds a reference to the file to your project. This means that you are operating with a single source file instead of multiple copies.

To link a file, choose Add Existing Item... menu item from the Project menu, select the file(s) that you want to link, and then click the dropdown arrow next to the Add button on the file dialog and select Add As Link.

We have class files that are shared this way among a half-dozen projects, including Win Forms, Silverlight, ASP.Net, Services, and PocketPC.

于 2012-04-04T00:57:14.643 回答
3

最简单的解决方案是将所有常见的东西推到一个公共项目中,然后简单地从其他两个解决方案中引用该项目。

  • 解决方案 A:
    • 项目A
    • 项目 C
  • 解决方案 B:
    • 项目 B
    • 项目 C

反正只是我的建议。

于 2012-04-04T00:24:11.207 回答