2011-04-01 107 views
3

Visual Studio显示确切的命令行用于编译器并链接项目属性 - > C/C++ - >命令行和链接器 - >命令行下的C++项目,但是,我无法找到C#项目的类似属性页面。用于C#项目的编译器命令行

有哪位知道什么是找出用来编译C#项目的CSC.EXE命令行参数的最佳方法

+1

这不是确切的C++命令行,只有buildlog.htm具有它。 C#之一在输出窗口中。 – 2011-04-01 21:27:19

回答

7

而不是直接使用csc.exe,我建议您改用msbuild。用msbuild,你只需要运行msbuild yourProject.csproj来编译它。

另外,根据this MSDN blog,您在输出窗口中看到的csc.exe命令行并未真正使用。

2
+0

已经这样做了,需要调试一些奇怪的问题,我可以通过IDE编译C#文件,但是,在从命令行编译它时,我会得到一个无效的可执行文件。在任何情况下,我认为能够访问用于构建项目的确切命令行会很好。不管怎么说,多谢拉。 – 2011-04-01 20:30:09

3

在Visual Studio中去调试 - > Windows的>输出。当你编译你的项目时,这个窗口会显示你正在使用的命令来编译你的代码,包括CSC命令。

确保在“输出”窗口的选项下拉列表中选择“显示来自:构建的输出”。

+0

没有意义,为什么调试输出视图将包含编译器命令行。构建输出不包含命令行。 – 2011-04-01 20:37:45

+0

这绝对是我的朋友!在选项中选择“显示来自:Build的输出”。 – 2011-04-01 20:45:07

+0

嗯,你可能是对的,但是,这是我的测试项目的构建窗口的输出。我需要在Build配置中启用某个标志吗? ------重建所有开始:项目:测试,配置:调试x86 ------ 测试 - > c:\ users \ admin \ documents \ visual studio 2010 \ Projects \ Tests \ Tests \ bin \ Debug \ Tests.exe ==========重建所有:1成功,0失败,0跳过========== – 2011-04-01 20:55:08

1

在Visual Studio 2010中去

工具 - >选项 - >项目和解决方案 - >生成,比最小运行

变化“MSBuild项目生成输出的详细程度”的东西较少的滤波(例如“正常”)。在此之后,Build Output窗口中会有更多的讨论,您应该能够看到CSC调用的实际命令行。