Exec Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
This class defines an "Exec" MSBuild task, which simply invokes the specified process with the specified arguments, waits for it to complete, and then returns True if the process completed successfully, and False if an error occurred.
This API supports the product infrastructure and is not intended to be used directly from your code.
public ref class Exec : Microsoft::Build::Tasks::ToolTaskExtension
public class Exec : Microsoft.Build.Tasks.ToolTaskExtension
type Exec = class
inherit ToolTaskExtension
Public Class Exec
Inherits ToolTaskExtension
- Inheritance
Constructors
Exec() |
This API supports the product infrastructure and is not intended to be used directly from your code. Default constructor. |
Properties
Bag |
This API supports the product infrastructure and is not intended to be used directly from your code. Gets the collection of parameters used by the derived task class. (Inherited from ToolTaskExtension) |
BuildEngine |
The build engine automatically sets this property to allow tasks to call back into it. (Inherited from Task) |
BuildEngine2 |
The build engine automatically sets this property to allow tasks to call back into it. This is a convenience property so that task authors inheriting from this class do not have to cast the value from IBuildEngine to IBuildEngine2. (Inherited from Task) |
BuildEngine3 |
Retrieves the IBuildEngine3 version of the build engine interface provided by the host. (Inherited from Task) |
BuildEngine4 |
Retrieves the IBuildEngine4 version of the build engine interface provided by the host. (Inherited from Task) |
BuildEngine5 |
Retrieves the IBuildEngine5 version of the build engine interface provided by the host. (Inherited from Task) |
BuildEngine6 |
Retrieves the IBuildEngine6 version of the build engine interface provided by the host. (Inherited from Task) |
BuildEngine7 |
Retrieves the IBuildEngine7 version of the build engine interface provided by the host. (Inherited from Task) |
BuildEngine8 |
Retrieves the IBuildEngine8 version of the build engine interface provided by the host. (Inherited from Task) |
BuildEngine9 |
Retrieves the IBuildEngine9 version of the build engine interface provided by the host. (Inherited from Task) |
canBeIncremental |
ToolTask is not incremental by default. When a derived class overrides SkipTaskExecution, then Question feature can take into effect. (Inherited from ToolTask) |
Command |
This API supports the product infrastructure and is not intended to be used directly from your code. Gets or sets the command to run. |
ConsoleOutput |
This API supports the product infrastructure and is not intended to be used directly from your code. Returns the output as an Item. Whitespace are trimmed. ConsoleOutput is enabled when ConsoleToMSBuild is true. This avoids holding lines in memory if they aren't used. ConsoleOutput is a combination of stdout and stderr. |
ConsoleToMSBuild |
This API supports the product infrastructure and is not intended to be used directly from your code. Enable the pipe of the standard out to an item (StandardOutput). |
CustomErrorRegularExpression |
This API supports the product infrastructure and is not intended to be used directly from your code. Users can supply a regular expression that we should use to spot error lines in the tool output. This is useful for tools that produce unusually formatted output |
CustomWarningRegularExpression |
This API supports the product infrastructure and is not intended to be used directly from your code. Users can supply a regular expression that we should use to spot warning lines in the tool output. This is useful for tools that produce unusually formatted output |
EchoOff |
When set to true, it passes /Q to the cmd.exe command line such that the command line does not get echo-ed on stdout (Inherited from ToolTask) |
EnvironmentOverride |
Obsolete.
Gets the Path override value. (Inherited from ToolTask) |
EnvironmentVariables |
Array of equals-separated pairs of environment variables that should be passed to the spawned executable, in addition to (or selectively overriding) the regular environment block. (Inherited from ToolTask) |
ExitCode |
The return code of the spawned process. If the task logged any errors, but the process had an exit code of 0 (success), this will be set to -1. (Inherited from ToolTask) |
FailIfNotIncremental | (Inherited from ToolTask) |
HasLoggedErrors |
This API supports the product infrastructure and is not intended to be used directly from your code. Whether this ToolTaskExtension has logged any errors (Inherited from ToolTaskExtension) |
HelpKeywordPrefix |
Gets or sets the prefix used to compose help keywords from string resource names. If a task does not have help keywords associated with its messages, it can ignore this property or set it to null. If the prefix is set to an empty string, then string resource names will be used verbatim as help keywords. For an example of how this prefix is used, see the TaskLoggingHelper.LogErrorWithCodeFromResources(string, object[]) method. (Inherited from Task) |
HostObject |
The build engine sets this property if the host IDE has associated a host object with this particular task. (Inherited from Task) |
IgnoreExitCode |
This API supports the product infrastructure and is not intended to be used directly from your code. Gets or sets a Boolean value that indicates whether the |
IgnoreStandardErrorWarningFormat |
This API supports the product infrastructure and is not intended to be used directly from your code. Whether to use pick out lines in the output that match the standard error/warning format, and log them as errors/warnings. Defaults to false. |
Log |
This API supports the product infrastructure and is not intended to be used directly from your code. Gets an instance of a TaskLoggingHelperExtension class containing task logging methods. (Inherited from ToolTaskExtension) |
LogStandardErrorAsError |
Should ALL messages received on the standard error stream be logged as errors. (Inherited from ToolTask) |
Outputs |
This API supports the product infrastructure and is not intended to be used directly from your code. Gets or sets the output items from the task. |
ResponseFileEncoding |
Overridable property specifying the encoding of the response file, UTF8 by default (Inherited from ToolTask) |
StandardErrorEncoding |
This API supports the product infrastructure and is not intended to be used directly from your code. Property specifying the encoding of the captured task standard error stream |
StandardErrorImportance |
Task Parameter: Importance with which to log text from the standard error stream. (Inherited from ToolTask) |
StandardErrorImportanceToUse |
The actual importance at which standard error messages will be logged. (Inherited from ToolTask) |
StandardErrorLoggingImportance |
This API supports the product infrastructure and is not intended to be used directly from your code. Importance with which to log ordinary messages in the standard error stream. |
StandardOutputEncoding |
This API supports the product infrastructure and is not intended to be used directly from your code. Property specifying the encoding of the captured task standard output stream |
StandardOutputImportance |
Task Parameter: Importance with which to log text from the standard out stream. (Inherited from ToolTask) |
StandardOutputImportanceToUse |
The actual importance at which standard out messages will be logged. (Inherited from ToolTask) |
StandardOutputLoggingImportance |
This API supports the product infrastructure and is not intended to be used directly from your code. Importance with which to log ordinary messages in the standard out stream. |
StdErrEncoding |
This API supports the product infrastructure and is not intended to be used directly from your code. Project visible property specifying the encoding of the captured task standard error stream |
StdOutEncoding |
This API supports the product infrastructure and is not intended to be used directly from your code. Project visible property specifying the encoding of the captured task standard output stream |
TaskProcessTerminationTimeout |
A timeout to wait for a task to terminate before killing it. In milliseconds. (Inherited from ToolTask) |
TaskResources |
Gets or sets the task's culture-specific resources. Derived classes should register their resources either during construction, or via this property, if they have localized strings. (Inherited from Task) |
Timeout |
Project visible property that allows the user to specify an amount of time after which the task executable is terminated. (Inherited from ToolTask) |
ToolCanceled |
Used to signal when a tool has been cancelled. (Inherited from ToolTask) |
ToolExe |
Projects may set this to override a task's ToolName. Tasks may override this to prevent that. (Inherited from ToolTask) |
ToolName |
This API supports the product infrastructure and is not intended to be used directly from your code. The name of the tool to execute |
ToolPath |
Project-visible property allows the user to override the path to the executable. (Inherited from ToolTask) |
UseCommandProcessor |
When set to true, the tool task will create a batch file for the command-line and execute that using the command-processor, rather than executing the command directly. (Inherited from ToolTask) |
UseNewLineSeparatorInResponseFile |
When set to true, the response file will use new lines instead of spaces to separate arguments. (Inherited from ToolTaskExtension) |
UseUtf8Encoding |
Whether or not to use UTF8 encoding for the cmd file and console window. Values: Always, Never, Detect If set to Detect, the current code page will be used unless it cannot represent the Command string. In that case, UTF-8 is used. |
UseUtf8Encoding |
Whether or not to use UTF8 encoding for the cmd file and console window. Values: Always, Never, Detect If set to Detect, the current code page will be used unless it cannot represent the Command string. In that case, UTF-8 is used. (Inherited from ToolTask) |
WorkingDirectory |
This API supports the product infrastructure and is not intended to be used directly from your code. Gets or sets the directory in which the command will run. |
YieldDuringToolExecution |
When set to true, this task will yield the node when its task is executing. (Inherited from ToolTask) |
Methods
AddCommandLineCommands(CommandLineBuilderExtension) |
This API supports the product infrastructure and is not intended to be used directly from your code. Adds the arguments for cmd.exe |
AddResponseFileCommands(CommandLineBuilderExtension) |
This API supports the product infrastructure and is not intended to be used directly from your code. Fills the provided CommandLineBuilderExtension with those switches and other information that can go into a response file. (Inherited from ToolTaskExtension) |
AdjustCommandsForOperatingSystem(String) |
Replace backslashes with OS-specific path separators, except when likely that the backslash is intentional. (Inherited from ToolTask) |
CallHostObjectToExecute() |
We expect the tasks to override this method, if they support host objects. The implementation should call into the host object to perform the real work of the task. For example, for compiler tasks like Csc and Vbc, this method would call Compile() on the host object. (Inherited from ToolTask) |
Cancel() |
Cancels the process executing the task by asking it to close nicely, then after a short period, forcing termination. (Inherited from ToolTask) |
DeleteTempFile(String) |
Delete temporary file. If the delete fails for some reason (e.g. file locked by anti-virus) then the call will not throw an exception. Instead a warning will be logged, but the build will not fail. (Inherited from ToolTask) |
Execute() |
This method invokes the tool with the given parameters. (Inherited from ToolTask) |
ExecuteTool(String, String, String) |
This API supports the product infrastructure and is not intended to be used directly from your code. Executes cmd.exe and waits for it to complete |
GenerateCommandLineCommands() |
This API supports the product infrastructure and is not intended to be used directly from your code. Returns a string with those switches and other information that can't go into a response file and must go directly onto the command line. Called after ValidateParameters and SkipTaskExecution (Inherited from ToolTaskExtension) |
GenerateFullPathToTool() |
This API supports the product infrastructure and is not intended to be used directly from your code. Determining the path to cmd.exe |
GenerateResponseFileCommands() |
This API supports the product infrastructure and is not intended to be used directly from your code. Returns the command line switch used by the tool executable to specify the response file Will only be called if the task returned a non empty string from GetResponseFileCommands Called after ValidateParameters, SkipTaskExecution and GetResponseFileCommands (Inherited from ToolTaskExtension) |
GetBoolParameterWithDefault(String, Boolean) |
This API supports the product infrastructure and is not intended to be used directly from your code. Get a bool parameter and return a default if its not present in the hash table. (Inherited from ToolTaskExtension) |
GetIntParameterWithDefault(String, Int32) |
This API supports the product infrastructure and is not intended to be used directly from your code. Get an int parameter and return a default if its not present in the hash table. (Inherited from ToolTaskExtension) |
GetProcessStartInfo(String, String, String) |
Initializes the information required to spawn the process executing the tool. (Inherited from ToolTask) |
GetResponseFileSwitch(String) |
Returns the command line switch used by the tool executable to specify the response file. Will only be called if the task returned a non empty string from GetResponseFileCommands Called after ValidateParameters, SkipTaskExecution and GetResponseFileCommands (Inherited from ToolTask) |
GetWorkingDirectory() |
This API supports the product infrastructure and is not intended to be used directly from your code. Gets the working directory to use for the process. Should return null if ToolTask should use the current directory. May throw an IOException if the directory to be used is somehow invalid. |
HandleTaskExecutionErrors() |
This API supports the product infrastructure and is not intended to be used directly from your code. Allows tool to handle the return code. This method will only be called with non-zero exitCode set to true. |
InitializeHostObject() |
We expect tasks to override this method if they support host objects. The implementation should make sure that the host object is ready to perform the real work of the task. (Inherited from ToolTask) |
LogEventsFromTextOutput(String, MessageImportance) |
This API supports the product infrastructure and is not intended to be used directly from your code. Calls a method on the TaskLoggingHelper to parse a single line of text to see if there are any errors or warnings in canonical format. |
LogEventsFromTextOutput(String, MessageImportance) |
Calls a method on the TaskLoggingHelper to parse a single line of text to see if there are any errors or warnings in canonical format. This can be overridden by the derived class if necessary. (Inherited from ToolTask) |
LogPathToTool(String, String) |
This API supports the product infrastructure and is not intended to be used directly from your code. Logs the tool name and the path from where it is being run. |
LogToolCommand(String) |
This API supports the product infrastructure and is not intended to be used directly from your code. Logs the command to be executed. |
ProcessStarted() |
Overridable function called after Start() in ExecuteTool(String, String, String) (Inherited from ToolTask) |
ReceiveExitNotification(Object, EventArgs) |
Signals when the tool exits. The Process object executing the tool calls this method when the tool exits. (Inherited from ToolTask) |
ReceiveStandardErrorData(Object, DataReceivedEventArgs) |
Queues up the output from the stderr stream of the process executing the tool, and signals the availability of the data. The Process object executing the tool calls this method for every line of text that the tool writes to stderr. (Inherited from ToolTask) |
ReceiveStandardOutputData(Object, DataReceivedEventArgs) |
Queues up the output from the stdout stream of the process executing the tool, and signals the availability of the data. The Process object executing the tool calls this method for every line of text that the tool writes to stdout. (Inherited from ToolTask) |
ResponseFileEscape(String) |
Overridable method to escape content of the response file (Inherited from ToolTask) |
SkipTaskExecution() |
Returns true if task execution is not necessary. Executed after ValidateParameters (Inherited from ToolTask) |
StartToolProcess(Process) |
We expect tasks to override this method if they need information about the tool process or its process events during task execution. Implementation should make sure that the task is started in this method. Starts the process during task execution. (Inherited from ToolTask) |
ValidateParameters() |
This API supports the product infrastructure and is not intended to be used directly from your code. Validate the task arguments, log any warnings/errors |