如何在不使用visualstudio的情况下编译和运行c程序
本文关键字:编译 情况下 运行 程序 visualstudio | 更新日期: 2023-09-27 18:27:57
我对C#很陌生。我刚刚用Visual Studio运行了C#"Hello World"程序。
我可以在不使用Visual Studio的情况下运行或编译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'