使用Visual Studio IDE将编译参数添加到csc命令

该解决方案包含两个项目: main.csprojhelper.csproj

我喜欢做的是使用dll哪个helper项目将被main.dll ,作为main.dll的嵌入式资源。

为此目的,为项目main添加自定义编译属性似乎是合理的: /resource:

问题是我找不到如何通过Project Property添加此编译参数。

PS也许有人可以建议其他解决方案,以避免在编译过程中进行更改。

您应该能够将帮助程序集添加为main.csproj中的资源。 这将使MsBuild为csc生成正确的参数。

(MsBuild是.NET一般使用的构建引擎,包括4.x,也是VisualStudio使用的。)

你可以做些什么来设置它:

  • 右键单击Visual Studio解决方案资源管理器中的Main项目,然后选择Add existing item 。 将要嵌入的程序集添加为辅助项目的bin文件夹中的链接项。 (单击选择对话框中“ 添加”按钮上的小箭头,以访问要添加为链接的选项)。
  • Main项目中项目的属性中,将Action设置为Embedded resource

棘手的一点是包含正确的构建,以便根据您正在构建的配置包括调试版本或发布版本。 如果您需要,您可以:

  • 编辑main.csproj文件以在帮助器dll的路径中包含${Configuration}变量。
  • 在main.csproj文件中添加一个预构建步骤,将程序集中的副本复制到一个固定的位置,并从那里包含文件(不再需要包含为链接位)

为了确保在构建主程序集时始终构建帮助程序集,我建议您将项目引用添加到主项目中。