Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用VisualStudioIDE向csc命令添加编译参数_C#_.net_Visual Studio 2010_Csc - Fatal编程技术网

C# 使用VisualStudioIDE向csc命令添加编译参数

C# 使用VisualStudioIDE向csc命令添加编译参数,c#,.net,visual-studio-2010,csc,C#,.net,Visual Studio 2010,Csc,该解决方案由两个项目组成:main.csproj和helper.csproj 我想做的是使用dll作为main.dll的嵌入式资源,该dll将编译成helper项目 为此,似乎可以为项目main:/resource:添加自定义编译属性 问题是我找不到如何通过Project属性添加这个编译参数 PS也许有人可以建议其他解决方案,以避免在编译过程中进行更改。您应该能够在main.csproj中添加辅助程序集作为资源。这将使MsBuild为csc生成正确的参数 (MsBuild是.NET在4.x之前(

该解决方案由两个项目组成:
main.csproj
helper.csproj

我想做的是使用dll作为
main.dll
的嵌入式资源,该dll将编译成
helper
项目

为此,似乎可以为项目
main
/resource:
添加自定义编译属性

问题是我找不到如何通过Project属性添加这个编译参数


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

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

(MsBuild是.NET在4.x之前(包括4.x)通常使用的生成引擎,VisualStudio也使用它。)

要设置此设置,您可以执行以下操作:

  • 右键单击Visual Studio解决方案资源管理器中的
    Main
    项目,然后选择添加现有项。从辅助对象项目的bin文件夹中添加要作为链接项嵌入的部件。(单击“选择”对话框中“添加”按钮上的小箭头以访问要添加为链接的选项)
  • Main
    项目中项的属性中,将Action设置为Embedded resource
棘手的一点是包含正确的构建,以便根据构建的配置包含调试构建或发布构建。 如果需要,您可以:

  • 编辑main.csproj文件,在助手dll的路径中包含
    ${Configuration}
    变量
  • 将预生成步骤添加到main.csproj文件中,以便将程序集中的文件复制到固定位置,并从此处包含该文件(此时不再需要包含为链接位)

为了确保在生成主程序集时始终生成帮助程序集,我建议您向主项目添加项目引用。

您的意思是,您找不到如何添加此编译参数?如果我注意的是正确的方法,请回答-
:我确实找不到如何添加此编译参数。但可能还有另一种解决方法,我根本不应该添加编译参数。老实说,从提出问题的那个一刻起,它花费了太多的时间,我不记得在向项目添加引用的可能性方面是否有任何限制。看来我做不到。我们有两个解决方案,它们共享相同的主要项目,但每个都有自己的助手。但添加组件作为链接的想法是好的。我真的忽略了这个机会。我会记下你的回答作为对我问题的回答。