如何在不使用visualstudio的情况下编译和运行c程序

本文关键字:编译 情况下 运行 程序 visualstudio | 更新日期: 2023-09-27 18:27:57

我对C#很陌生。我刚刚用Visual Studio运行了C#"Hello World"程序。

我可以在不使用Visual Studio的情况下运行或编译C#程序吗?

如果可能,那么我应该使用哪个编译器?

感谢

如何在不使用visualstudio的情况下编译和运行c程序

如果您安装了.NET v4(因此,如果您有更新的窗口或应用了窗口更新)

C:'Windows'Microsoft.NET'Framework'v4.0.30319'csc.exe somefile.cs

C:'Windows'Microsoft.NET'Framework'v4.0.30319'msbuild.exe nomefile.sln

C:'Windows'Microsoft.NET'Framework'v4.0.30319'msbuild.exe nomefile.csproj

如果您安装了.NET,则很可能会设置%FrameworkDir%变量,因此:

%FrameworkDir%'v4.0.30319'csc.exe ...
%FrameworkDir%'v4.0.30319'msbuild.exe ...

我使用批处理脚本编译并运行C#:

C:'Windows'Microsoft.NET'Framework'v4.0.30319'csc /out:%1 %2
@echo off
if errorlevel 1 (
    pause
    exit
)
start %1 %1

我这样称呼它:

C:'bin'csc.bat "C:'code'MyProgram.exe" "C:'code'MyProgram.cs"

我在Notepad++中也有一个快捷方式,您可以通过运行>运行…来定义它:

C:'bin'csc.bat "$(CURRENT_DIRECTORY)'$(NAME_PART).exe" "$(FULL_CURRENT_PATH)"

我把这个快捷方式分配给了我的F5键,以达到最大的惰性。

有不同的方法:

1.使用csc.exe构建C#应用程序

虽然您可能永远不会决定只使用C#命令行编译器来构建大型应用程序,但了解如何手动编译代码文件的基本知识是很重要的。

2.使用Notepad++构建.NET应用程序

我想快速指出的另一个简单的文本编辑器是免费下载的Notepad++应用程序。此工具可从http://notepad-plus.sourceforge.net.与原始窗口不同Notepad应用程序,Notepad++允许您编写各种语言的代码,并支持

3.使用SharpDevelop构建.NET应用程序

正如您可能同意的那样,与记事本。然而,这些工具并没有为C#代码提供丰富的IntelliSense功能构建图形用户界面、项目模板或数据库操作实用程序。解决此类问题需要,请允许我介绍下一个.NET开发选项:SharpDevelop(也称为"#Develop")。您可以从http://www.sharpdevelop.com.

另一个选项是一个有趣的开源项目ScriptCS。它使用了一些巧妙的技术,让您在VisualStudio之外获得开发体验,同时仍然能够利用NuGet来管理您的依赖关系。它是免费的,非常容易安装使用巧克力。你可以在这里查看http://scriptcs.net.

它的另一个很酷的功能是命令行中的REPL。它允许你做这样的事情:

C:'> scriptcs
scriptcs (ctrl-c or blank to exit)
> var message = "Hello, world!";
> Console.WriteLine(message);
Hello, world!
> 
C:'>

您可以创建C#实用程序"脚本",它可以是从小型系统任务到单元测试,再到完整的Web API。在最新版本中,我相信他们还允许在自己的应用程序中托管运行时。

也可以在GitHub页面上查看it开发https://github.com/scriptcs/scriptcs

如果您已经准备好了一个项目,只想更改一些代码,然后进行构建。请检查MSBuild,它位于Microsoft.Net的windows目录下。

C:'Windows'Microsoft.NET'Framework'v4.0.30319'msbuild "C:'Projects'MyProject.csproj" /p:Configuration=Debug;DeployOnBuild=True;PackageAsSingleFile=False;outdir=C:'Projects'MyProjects'Publish'

(请不要编辑,保留为单行)

上面的行为了可读性而被分解

C:'Windows'Microsoft.NET'Framework'v4.0.30319'msbuild "C:'Projects'MyProject.csproj"
/p:Configuration=Debug;DeployOnBuild=True;PackageAsSingleFile=False;
outdir=C:'Projects'MyProjects'Publish'
相关文章: