MSBuild .Targets Files
MSBuild includes several .targets files that contain items, properties, targets, and tasks for common scenarios. These files are automatically imported into most Visual Studio project files to simplify maintenance and readability.
Projects typically import one or more .targets files to define their build process. For example a Visual C# project created by Visual Studio will import Microsoft.CSharp.targets which imports Microsoft.Common.targets. The Visual C# project itself will define the items and properties specific to that project, but the standard build rules for a Visual C# project are defined in the imported .targets files.
The $(MSBuildToolsPath) value specifies the path of these common .targets files. If the ToolsVersion is 4.0, the files are in the following location: WindowsInstallationPath\Microsoft.NET\Framework\v4.0.30319\
Note
For information about how to create your own targets, see MSBuild Targets. For information about how to use the Import element to insert a project file into another project file, see Import Element (MSBuild) and How to: Use the Same Target in Multiple Project Files.
Common .Targets Files
.Targets file |
Description |
---|---|
Microsoft.Common.targets |
Defines the steps in the standard build process for Visual Basic and Visual C# projects. Imported by the Microsoft.CSharp.targets and Microsoft.VisualBasic.targets files, which include the following statement: <Import Project="Microsoft.Common.targets" /> |
Microsoft.CSharp.targets |
Defines the steps in the standard build process for Visual C# projects. Imported by Visual C# project files (.csproj), which include the following statement: <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> |
Microsoft.VisualBasic.targets |
Defines the steps in the standard build process for Visual Basic projects. Imported by Visual Basic project files (.vbproj), which include the following statement: <Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" /> |