Wie kompilieren und führen Sie eine CS-Datei über ein Eingabeaufforderungsfenster aus?
Wie kompilieren und führen Sie eine CS-Datei über ein Eingabeaufforderungsfenster aus?
Antworten:
CSC.exe ist der in .NET Framework enthaltene CSharp-Compiler und kann zum Kompilieren über die Eingabeaufforderung verwendet werden. Die Ausgabe kann eine ausführbare Datei ".exe" sein, wenn Sie "/ target: exe" oder eine DLL verwenden. Wenn Sie / target: library verwenden, befindet sich CSC.exe im .NET Framework-Verzeichnis.
zB für .NET 3.5 , c:\windows\Microsoft.NET\Framework\v3.5\
.
Öffnen Sie zum Ausführen zunächst eine Eingabeaufforderung, klicken Sie auf "Start" und geben Sie ein cmd.exe
.
Möglicherweise müssen Sie dann in das Verzeichnis cd, das Ihre Quelldateien enthält.
Führen Sie den C # -Compiler folgendermaßen aus:
c:\windows\Microsoft.NET\Framework\v3.5\bin\csc.exe
/t:exe /out:MyApplication.exe MyApplication.cs ...
(alle in einer Zeile)
Wenn Sie mehr als ein Quellmodul kompilieren möchten, können Sie es in dieselbe Befehlszeile einfügen. Wenn Sie andere Baugruppen referenzieren möchten, verwenden Sie /r:AssemblyName.dll
.
Stellen Sie sicher, dass in einer Ihrer Klassen eine statische Main () -Methode definiert ist, die als "Einstiegspunkt" fungiert.
Geben Sie zum Ausführen der resultierenden EXE-Datei ein, MyApplication
und verwenden Sie anschließend <ENTER>
die Eingabeaufforderung.
In diesem Artikel zu MSDN werden die Optionen für den Befehlszeilen-Compiler ausführlicher beschrieben. Sie können Ressourcen einbetten, Symbole festlegen, Assemblys signieren - alles, was Sie in Visual Studio tun können.
Wenn Sie Visual Studio installiert haben, klicken Sie im "Startmenü" auf. Unter Visual Studio Tools können Sie eine "Visual Studio-Eingabeaufforderung" öffnen, mit der alle erforderlichen Umgebungs- und Pfadvariablen für die Befehlszeilenkompilierung eingerichtet werden.
Es ist zwar sehr praktisch, dies zu wissen, Sie sollten es jedoch mit dem Wissen über ein Build-Tool wie NAnt , MSBuild , FinalBuilder usw. kombinieren . Diese Tools bieten eine vollständige Build-Umgebung, nicht nur den Basis-Compiler.
Auf einem Mac ist die Syntax ähnlich, nur der Cis-Compiler heißt nur csc
:
$ csc /target:exe /out:MyApplication.exe MyApplication.cs ...
Dann, um es auszuführen:
$ mono MyApplication.exe
C:\Program Files (x86)\MSBuild\14.0\Bin\csc.exe
Eine andere Möglichkeit zum Kompilieren von C # -Programmen (ohne Visual Studio zu verwenden oder ohne es installiert zu haben) besteht darin, eine Benutzervariable in Umgebungsvariablen zu erstellen, nämlich "PATH".
Kopieren Sie den folgenden Pfad in diese Variable:
"C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319"
oder je nachdem, welches .NET Ihr PC hat.
Sie müssen also nicht jedes Mal, wenn Sie einen Code kompilieren, den gesamten Pfad angeben. Einfach benutzen
"C: \ Benutzer \ Benutzername \ Desktop> csc [Optionen] Dateiname.cs"
oder wo immer der Pfad Ihres Codes ist.
Jetzt können Sie loslegen.
Sie können ein C # -Programm kompilieren:
c:> csc Hello.cs
Sie können das Programm ausführen
c:> Hallo
Während es definitiv eine gute Sache ist, zu wissen, wie man über die Befehlszeile erstellt, ist es für die meisten Arbeiten möglicherweise einfacher, eine IDE zu verwenden. Die C # Express Edition ist kostenlos und sehr gut für das Geld ;-p
Alternativ können Dinge wie snippy verwendet werden, um Fragmente von C # -Code auszuführen.
Schließlich - beachten Sie, dass die Befehlszeile implementierungsspezifisch ist. für MS ist es csc
; für Mono ist es gmcs
und Freunde .... Ebenso auszuführen: Es ist nur "Exename" für die MS-Version, aber normalerweise "Mono Exename" für Mono.
Schließlich werden viele Projekte mit Build-Skript-Tools erstellt. MSBuild , NAnt usw.
Öffnen Sie für die neueste Version zuerst ein Powershell-Fenster, wechseln Sie in einen beliebigen Ordner (z. B. c:\projects\
) und führen Sie Folgendes aus
# Get nuget.exe command line
wget https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -OutFile nuget.exe
# Download the C# Roslyn compiler (just a few megs, no need to 'install')
.\nuget.exe install Microsoft.Net.Compilers
# Compiler, meet code
.\Microsoft.Net.Compilers.1.3.2\tools\csc.exe .\HelloWorld.cs
# Run it
.\HelloWorld.exe
Ein Beispiel HelloWorld.cs
using System;
public class HelloWorld {
public static void Main()
{
Console.WriteLine("Hello world!");
}
}
Sie können auch den neuen C # -Interpreter ausprobieren;)
.\Microsoft.Net.Compilers.1.3.2\tools\csi.exe
> Console.WriteLine("Hello world!");
Hello world!
So installieren Sie MSBuild mit einem eigenständigen C # 7.0-Compiler, der im neuesten .NET Framework 4.7 nicht mehr enthalten ist:
Ist es möglich, einen C # -Compiler ohne Visual Studio zu installieren?
Dann renn einfach
"C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\Roslyn\csc.exe" MyApplication.cs
um eine einzelne Quelldatei in eine ausführbare Datei zu kompilieren.
Beachten Sie auch, dass .Net Core das Kompilieren einer einzelnen Quelldatei ohne vorkonfiguriertes Projekt nicht unterstützt .
Sie können Ihre Klassendateien über die VS-Eingabeaufforderung erstellen (sodass alle erforderlichen Umgebungsvariablen geladen werden), nicht über das Standard-Windows-Befehlsfenster.
Weitere Informationen zum Erstellen von Befehlszeilen mit csc.exe (dem Compiler) finden Sie in diesem Artikel .
Wenn Sie Visual Studio installiert haben, haben Sie die Developer Command Prompt for VS. Sie können Ihr Programm einfach mit dem csc
Befehl erstellen und Ihre Anwendung mit dem Namen der Anwendung in der Entwickler-Eingabeaufforderung ausführen.
Sie können die Entwickler-Eingabeaufforderung wie unten angegeben öffnen.
Start => Entwickler-Eingabeaufforderung für VS
Hoffe das hilft!
Zum Pfad hinzufügen
C:\Windows\Microsoft.NET\Framework\v3.5
Kompilieren:
csc file.cs
Ausführen:
file
Sobald Sie den c # -Code geschrieben und gespeichert haben. Sie können die Eingabeaufforderung verwenden, um sie genau wie den anderen Code auszuführen.
An der Eingabeaufforderung geben Sie das Verzeichnis ein, in dem sich Ihre Datei befindet, und geben Sie ein
Kompilieren:
mcs yourfilename.cs
Ausführen:
mono yourfilename.exe
Wenn Sie möchten, dass Ihre EXE-Datei mit einem anderen Namen unterschiedlich ist, geben Sie ein
Kompilieren:
mcs yourfilename.cs -out:anyname.exe
Ausführen:
mono anyname.exe
Das sollte helfen!
Verwenden Sie in Windows-Systemen den Befehl csc <filname>.cs
an der Eingabeaufforderung, während sich das aktuelle Verzeichnis in Microsoft Visual Studio \ <Jahr> \ <Version> befindet
Es gibt zwei Möglichkeiten:
Verwenden der Eingabeaufforderung:
Verwenden der Developer-Eingabeaufforderung:
Start -> Eingabeaufforderung für Entwickler für VS 2017 (Hier ist das Verzeichnis bereits auf den Ordner Visual Studio festgelegt.)
Verwenden Sie den Befehl: csc /.cs
Ich hoffe es hilft!
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\15.0\Bin\Roslyn
Hier finden Sie den c # -Compiler, der c # 7 unterstützt. Andernfalls werden die .net 4-Compiler verwendet, die nur c # 5 unterstützen
Microsoft hat seinen Compiler auf Github verschoben (natürlich):
Ich habe eine Batch-Datei geschrieben, mit CompileCS.cmd
der eine C # -Datei kompiliert (und optional ausgeführt) werden kann. Die vollständige Antwort einschließlich des Batch-Programms 'CompileCS' finden Sie hier .
Die Verwendung ist einfach:
CompileCS /run GetDotNetVersion.cs
[arg1] ... [arg9]
kompiliert und führt GetDotNetVersion.cs aus - wenn Sie es nur kompilieren möchten, lassen Sie den /run
Parameter weg .
Die Konsolenanwendung GetDotNetVersion.cs
wird dieser Antwort entnommen .