C# 从Visual Studio生成时如何查看CSC.EXE(或VBC.EXE)参数

C# 从Visual Studio生成时如何查看CSC.EXE(或VBC.EXE)参数,c#,vb.net,visual-studio-2010,C#,Vb.net,Visual Studio 2010,在使用VisualStudio构建应用程序时,是否有办法查看CSC(或VBC)参数是什么 Visual Studio在后台调用CSC.exe/VBC.exe。我想知道是否有办法看到那个电话 我需要这些信息来使用命令行复制等效的构建脚本 我为构建设置了不同的详细级别,但在输出窗口中没有看到任何CSC.EXE调用 我真的很惊讶为什么微软没有用一种简单的方法来查看底层的CSC命令 AJ如果我通过你的步骤,我会得到: 我看不到任何提及CSC的内容 好的,下面是我如何解决这个问题的: 首先,我转到工具和

在使用VisualStudio构建应用程序时,是否有办法查看CSC(或VBC)参数是什么

Visual Studio在后台调用CSC.exe/VBC.exe。我想知道是否有办法看到那个电话

我需要这些信息来使用命令行复制等效的构建脚本

我为构建设置了不同的详细级别,但在输出窗口中没有看到任何CSC.EXE调用

我真的很惊讶为什么微软没有用一种简单的方法来查看底层的CSC命令

AJ如果我通过你的步骤,我会得到:

我看不到任何提及CSC的内容


好的,下面是我如何解决这个问题的:

首先,我转到工具和选项,并将详细信息设置为详细信息。(在此之后,生成输出仍然为空)

然后我得到了VS2010的服务包


对于Visual Studio 2012,我也遇到了类似的问题。我必须获得“更新4”才能查看日志和输出中的CSC.EXE。

我认为可以在VS环境选项中设置您要查找的内容。在“工具”菜单下,选择“选项”,然后选择“项目和解决方案”。确保选中“生成开始时显示输出窗口”

然后,在“项目和解决方案”下,选择“构建并运行”并更改“MSBuild项目构建输出详细信息”的级别。作为一个实验,我将其更改为“详细信息”,但您可以修改这些级别以获得所需的内容

然后,当您构建/重建解决方案时,最简单的方法是将光标放在构建输出窗口中并搜索“csc”(或VB的“vbc”)。您应该能够看到对编译器的整个命令行调用

编辑
要回答您的评论,请将输出窗口顶部的“显示输出自”下拉选项从“调试”更改为“生成”,并在不以调试模式运行应用程序的情况下执行生成/重建


如果没有,MSBuild.exe将调用编译器。而且做得更多。当您启动构建详细信息时,很容易看到。自己运行MSBuild.exe是复制生成的唯一合理方法。我不确定在这种情况下是否有任何好处。据我所知,msbuild也是一个DOS应用程序。因此,要调用它,我需要提供项目所需的参数。@SNash:您可以通过为它提供项目文件和一些属性(例如
msbuild SomeApplication.csproj/p:Configuration=Release
)来使用
msbuild
。直接调用
csc.exe
的方法的问题在于,您将忽略项目文件中包含的所有构建信息。(很快,您知道如何对程序集进行签名吗?如果您的项目配置为生成已签名的程序集,那么MSBuild也会这样做)
MSBuild
是在命令行上生成的最合理的方法。假设我使用MSBuild。然后我如何获取“项目文件中包含的所有生成信息”,并将其传递给msbuild。这是我的问题。可能只是给未来读者的一张便条的副本。您可能需要获取最新更新,否则可能无法使用!