Exec (Tarea)
Actualización: noviembre 2007
Ejecuta el programa o comando especificado con los argumentos especificados.
Parámetros
En la siguiente tabla se describen los parámetros de la tarea Exec.
Parámetro |
Descripción |
---|---|
Command |
Parámetro String requerido. El comando o comandos que se va a ejecutar. Éstos pueden ser comandos del sistema, como attrib, o una aplicación ejecutable, como program.exe, runprogram.bat o setup.msi. Este parámetro puede contiene varias líneas de comandos. Alternativamente, puede colocar varios comandos en un archivo por lotes y ejecutarlo utilizando este parámetro. |
ExitCode |
Parámetro de salida de sólo lectura Int32 opcional. Especifica el código de salida proporcionado por el comando ejecutado. |
IgnoreExitCode |
Parámetro Boolean opcional. Si es true, la tarea omite el código de salida proporcionado por el comando ejecutado. De lo contrario, la tarea devuelve false si el comando ejecutado devuelve un código de salida distinto de cero. |
Outputs |
Parámetro de salida ITaskItem[] opcional. Contiene los elementos de salida de la tarea. La tarea Exec no los establece por sí misma. En cambio, puede proporcionarlos como si los estableciera, para que se puedan utilizar después en el proyecto. |
StdErrEncoding |
Parámetro de salida String opcional. Especifica la codificación de la secuencia de error estándar de la tarea capturada. El valor predeterminado es la codificación generada de la consola actual. |
StdOutEncoding |
Parámetro de salida String opcional. Especifica la codificación de la secuencia de salida estándar de la tarea capturada. El valor predeterminado es la codificación generada de la consola actual. |
Timeout |
Parámetro Int32 opcional. Especifica el tiempo, en milisegundos, tras el cual se termina la tarea ejecutable. El valor predeterminado es Int.MaxValue; es decir, no existe tiempo de espera. |
ToolPath |
Parámetro String opcional. Especifica la ubicación desde la que la tarea cargará el archivo ejecutable subyacente (cmd.exe). |
WorkingDirectory |
Parámetro String opcional. Especifica el directorio en el que el comando se ejecutará. |
Comentarios
Esta tarea es útil cuando una tarea de MSBuild específica para el trabajo que desea realizar no está disponible. Una desventaja del uso de la tarea Exec en lugar de una tarea más específica es que no puede recabar resultados de la herramienta o comando que ejecuta.
La tarea Exec llama al archivo cmd.exe en vez de invocar directamente un proceso.
Ejemplo
El ejemplo siguiente utiliza la tarea Exec para ejecutar un comando.
<Project xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Binaries Include="*.dll;*.exe"/>
</ItemGroup>
<Target Name="SetACL">
<!-- set security on binaries-->
<Exec Command="echo y| cacls %(Binaries.Identity) /G everyone:R"/>
</Target>
</Project>