Personas que lo han encontrado útil: 0 de 1 - Valorar este tema

Generar mediante la línea de comandos

Puede invocar el compilador de C# escribiendo el nombre de su archivo ejecutable (csc.exe) en la línea de comandos. Si utiliza el Símbolo del sistema de Visual Studio (disponible como acceso directo en el menú Inicio, Visual Studio Tools), todas las variables de entorno necesarias se establecen automáticamente. De lo contrario, puede ser necesario ajustar la ruta de acceso para ejecutar csc.exe desde cualquier subdirectorio del equipo. Si no se utiliza el Símbolo del sistema de Visual Studio, se deberá ejecutar vsvars32.bat a fin de establecer las variables de entorno adecuadas para que se admitan generaciones desde la línea de comandos. Para obtener más información sobre vsvars32.bat, vea Cómo: Generar desde la línea de comandos.

Cuando trabaje en un equipo que sólo tenga .NET Framework SDK, puede emplear el compilador de C# en la línea de comandos si utiliza el Símbolo del sistema de SDK, que está disponible en la opción de menú Microsoft .NET Framework SDK.

Para efectuar la generación desde el entorno de desarrollo, vea Preparar y administrar generaciones.

El archivo ejecutable csc.exe suele encontrarse en la carpeta Microsoft.NET\Framework\<versión> en el directorio del sistema. Su ubicación puede variar, según la configuración exacta de cada equipo individual. En el equipo habrá varias versiones de este archivo ejecutable si se ha instalado en él más de una versión de .NET Framework. Para obtener más información sobre estas instalaciones, vea Installing Multiple Versions of the .NET Framework.

En este tema se tratan los siguientes temas:

Reglas para la sintaxis de la línea de comandos

Líneas de comandos de ejemplo

Diferencias entre los resultados del compilador de C# y el compilador de C++

Reglas para la sintaxis de la línea de comandos

El compilador de C# utiliza las siguientes reglas para interpretar los argumentos empleados en la línea de comandos del sistema operativo:

  • Los argumentos van delimitados por espacio en blanco, que puede ser un carácter de espacio o una tabulación.

  • El carácter de intercalación (^) no se reconoce como carácter de escape ni como delimitador. El analizador de la línea de comandos del sistema operativo procesa este carácter por completo antes de pasarlo a la matriz argv del programa.

  • Una cadena entre comillas ("cadena") se interpreta como un solo argumento, sin importar el espacio en blanco que contenga. Se puede incrustar una cadena entre comillas dentro de un argumento.

  • Unas comillas precedidas por una barra diagonal inversa (\") se interpretan como un literal de cadena de comillas (").

  • Las barras diagonales inversas se interpretan literalmente, a menos que precedan inmediatamente a unas comillas.

  • Si a un número par de barras diagonales inversas le siguen unas comillas, se coloca una barra diagonal inversa en la matriz argv por cada par de barras diagonales inversas y se interpretan las comillas como un delimitador de cadenas.

  • Si a un número impar de barras diagonales inversas le siguen unas comillas, se coloca una barra diagonal inversa en la matriz argv por cada par de barras diagonales, y se interpretan las comillas como un carácter de escape gracias a la barra diagonal restante, lo que hace que se coloque un literal de cadena de comillas (") en argv.

Líneas de comandos de ejemplo

  • Compila File.cs y genera File.exe:

    csc File.cs 
    
  • Compila File.cs y genera File.dll:

    csc /target:library File.cs
    
  • Compila File.cs y crea My.exe:

    csc /out:My.exe File.cs
    
  • Compila todos los archivos de C# del directorio actual, con optimizaciones activadas, y define el símbolo DEBUG. Como resultado se genera el archivo File2.exe:

    csc /define:DEBUG /optimize /out:File2.exe *.cs
    
  • Compila todos los archivos de C# del directorio actual, generando una versión de depuración de File2.dll. No se muestra logotipo ni ningún tipo de advertencias:

    csc /target:library /out:File2.dll /warn:0 /nologo /debug *.cs
    
  • Compila todos los archivos de C# del directorio actual, generando Something.xyz (una DLL):

    csc /target:library /out:Something.xyz *.cs
    

Diferencias entre los resultados del compilador de C# y el compilador de C++

No se crean archivos de objeto (.obj) como resultado de ejecutar el compilador de C#; los archivos de resultados se crean directamente. Como consecuencia de ello, el compilador de C# no requiere un vinculador.

Vea también

¿Le ha resultado útil?
(Caracteres restantes: 1500)
Contenido de la comunidad Agregar