Csc
1 Wstęp
2 Najprostszy sposób użycia
3 Plik Reakcji
4 Dołączanie komponentów
5 Opcje kompilatora
5.1 Opcje wyjścia
5.2 Opcje wejścia
5.3 Zasoby
5.4 Generowanie kodu
5.5 Błędy i ostrzeżenia
5.6 Język
5.7 Różne
5.8 Zaawansowane
Wstęp
CSC to darmowy kompilator C# dostępny wraz ze środowiskiem Microsoft .NET Framework.
W systemach Windows znajduje się on w katalogu windows/Microsoft.NET/Framework/v.numerwersji/. Używa się go za pomocą wiersza poleceń.
Najprostszy sposób użycia
csc nazwapliku.cs
Plik Reakcji
Do kompilatora można przekazać plik zawierający ciąg komend, które ma on wykonać. Plik taki nazywa się plikiem reakcji, a dołącza się go przy pomocy składni:
csc @<plik_reakcji>
Kompilator csc szuka pliku csc.rsp, jeżeli go znajdzie wykorzystuje go tak jakby został podany z użyciem powyższej składni.
Dołączanie komponentów
Kompilator używa domyślnie komponentu mscorelib.dll w którym zawarte są podstawowe elementy platformy .NET.
Jeżeli chcemy dołączyć inne komponenty należy użyć składni:
csc /r:nazwabiblioteki.dll nazwapliku.cs
na przykład gdy chcemy uruchomić programy wykorzystujące komponent WinForms należy wskazać go w ten sposób:
csc /r:system.winforms.dll nazwapliku.css
Należy zauważyć ze nazwy plików dll platformy .NET przypominają przestrzenie nazw które reprezentują w C#.
Opcje kompilatora
Opcje wyjścia
/out:`<plik>` | Ustala nazwę pliku wyjściowego (domyślnie: nazwa pliku z klasą main lub pierwszy plik) |
/target:exe | Tworzenie aplikacji konsolowej (domyślnie) [#]_ |
/target:winexe | Tworzenie aplikacji windows |
/target:library | Tworzenie biblioteki |
/target:module | Tworzenie modułu mogącego być dodanym do innego pakietu |
/doc:`<file>` | Plik XML do wygenerowania |
/platform:`<string>` | Określa na jakich platformach może być uruchomiony plik: x86, Itanium, x64, lub anycpu. Domyślnie: anycpu. |
.. [#] Forma skrócona od /target to /t (np. /t:exe)
Opcje wejścia
/recurse:`<wildcard>` | Dołącza wszystkie pliki w danym katalogu o nazwach pasujących do podanego wzorca. |
/reference:`<alias>=<file>` | Dołącz metadane z określonego pakietu dając im przezwisko. (Forma skrócona: /r) |
/reference:`<file list="list">` | Dołącz metadane z określonego pakietu. (Forma skrócona: /r) |
/addmodule:`<file list="list">` | Określenie modułów które stanowią część tego pakietu |
Zasoby
/win32res:`<file>` | Określa plik zasobów Win32 (.res) |
/win32icon:`<file>` | Użycie podanej ikony |
/resource:`<resinfo>` | Osadzenie podanych zasobów (Forma skrócona: /res) |
/linkresource`<file>`[,(string name)[,public|private]] | Dowiązanie zasobu do tego pakietu bez osadzania (Forma skrócona: /linkres) |
Generowanie kodu
/debug[+|-] | Wyświetlanie informacji związanych z wykrywaniem błędów |
/debug:{full|pdbonly} | Określa sposób wyświetlania informacji o błędach |
/optimize[+|-] | Włącza optymalizacje (Forma skrócona: /o) |
Błędy i ostrzeżenia
/warnaserror[+|-] | Wyświetlaj wszystkie błędy i ostrzeżenia |
/warnaserror[+|-]:`<warn list="list">` | Wyświetlaj określone ostrzeżenia jako błędy |
/warn:`<n>` | Ustaw poziom ostrzeżeń (0-4) (Forma skrócona: /w) |
/nowarn:`<warn list="list">` | Wyłącz określone ostrzeżenia |
Język
/checked[+|-] | Sprawdzanie nadmiaru i niedomiaru |
/unsafe[+|-] | Zezwalaj na kod ?potencjalnie niebezpieczny? |
/define:`<symbol list="list">` | Definicja symboli kompilacji warunkowej (Forma skrócona: /d) |
/langversion:`<string>` | Ustal wersję języka: ISO-1 lub Default |
Różne
@`<file>` | Odczytaj plik reakcji |
/help | Wyświetl parametry kompilatora (Forma skrócona: /?) |
/nologo | Ukryj komunikat o prawach autorskich kompilatora |
/noconfig | Nie dołączaj automatycznie pliku CSC.RSP |
Zaawansowane
/baseaddress:`<address>` | Określenie podstawowego adresu biblioteki |
/bugreport:`<file>` | Utwórz plik z raportem o błędach |
/codepage:`<n>` | Ustaw kodowanie znaków dla plików z kodem źródłowym |
/utf8output | Ustaw kodowanie UTF-8 dla wyjściowych komunikatów kompilatora |
/main:`<type>` | Ustawienie głównej klasy programu (Forma skrócona: /m) |
/fullpaths | Kompilator generuje pełne ścieżki dostępu |
/filealign:`<n>` | Ustawienie wyrównania używanego w pliku wyjściowym |
/pdb:`<file>` | Ustala nazwę pliku z informacjami o wykrywanych błędach (Domyślnie: plik wyjściowy z rozszerzeniem .pdb) |
/nostdlib[+|-] | Nie dołączaj biblioteki standardowej (mscorlib.dll) |
/lib:`<file list="list">` | Ustala dodatkowy katalog w którym kompilator będzie szukał odwołań |
/errorreport:`<string>` | Ustala jak kompilator ma obsługiwać swoje wewnętrzne błędy: prompt, send, queue, lub none. Domyślnie: queue. |
/moduleassemblyname:`<string>` | Nazwa pakietu którego częścią będzie ten moduł. |
Przydatny podręczny opisik ;)
praktycznie przetłumaczyłem
csc /help
ale to chyba nic złego ;)
Może się komuś przyda. Ja i tak wolę korzystać z IDE.