NAnt SDK Documentation - v0.92 |

# ExternalProgramBase Class

Provides the abstract base class for tasks that execute external applications.

For a list of all members of this type, see ExternalProgramBase Members.

System.Object
NAnt.Core.Element
NAnt.Core.Task
NAnt.Core.Tasks.ExternalProgramBase
Derived types

[Visual Basic]
<Serializable, _ Serializable>
MustInherit Public Class ExternalProgramBase
Inherits Task
[C#]
[Serializable]
[Serializable]
public abstract class ExternalProgramBase : Task

#### Thread Safety

Public static (Shared in Visual Basic) members of this type are safe for multithreaded operations. Instance members are not guaranteed to be thread-safe.

#### Remarks

When a ProgramLocationAttribute is applied to the deriving class and ExeName does not return an absolute path, then the program to execute will first be searched for in the location specified by LocationType.

If the program does not exist in that location, then the list of tool paths of the current target framework will be scanned in the order in which they are defined in the NAnt configuration file.

#### Requirements

Namespace: NAnt.Core.Tasks

Assembly: NAnt.Core (in NAnt.Core.dll)

#### See Also

ExternalProgramBase Members | NAnt.Core.Tasks Namespace