Share via


VCFileConfiguration.Tool Property

Gets the tool that will build the file.

Namespace:  Microsoft.VisualStudio.VCProjectEngine
Assembly:  Microsoft.VisualStudio.VCProjectEngine (in Microsoft.VisualStudio.VCProjectEngine.dll)

Syntax

'Declaration
Property Tool As Object
Object Tool { get; set; }
property Object^ Tool {
    Object^ get ();
    void set (Object^ value);
}
abstract Tool : Object with get, set
function get Tool () : Object 
function set Tool (value : Object)

Property Value

Type: System.Object
The tool that will build the file.

Remarks

In order to change a tool associated with a particular file, you must change the ItemType property for the file. See the second example in this topic for details.

You can also use the Rules property, or cast the tool object to the IVCRulePropertyStorage interface to provide rule-based access to the MSBuild metadata for this tool.

Examples

The following sample code uses the Tool property in the integrated development environment (IDE):

' add reference to Microsoft.VisualStudio.VCProjectEngine
Imports EnvDTE
Imports Microsoft.VisualStudio.VCProjectEngine

Public Module Module1
    Sub Test()
        Dim file, file2 As VCFile
        Dim col As IVCCollection
        Dim fileconfig As VCFileConfiguration
        Dim prj As VCProject
        prj = DTE.Solution.Projects.Item(1).Object
        col = prj.Files
        file = col.Item(1)
        col = file.FileConfigurations
        fileconfig = col.Item("Debug|Win32")
       MsgBox(fileconfig.Tool.ToolName)
    End Sub
End Module

The following sample shows how to change the tool associated with a given file.

' add reference to Microsoft.VisualStudio.VCProjectEngine
Imports EnvDTE
Imports Microsoft.VisualStudio.VCProjectEngine

Public Module Module1
    Sub Test()
        Dim file, file2 As VCFile
        Dim col As IVCCollection
        Dim col2 As IVCCollection
        Dim fileconfig As VCFileConfiguration
        Dim prj As VCProject
        Dim tool As Object

        ' changes the tool associated with a file
        col = prj.Files
        file = col.Item(1)
        file.ItemType = "CLCompile"
        MsgBox(fileconfig.Tool.ToolName)
    End Sub
End Module

See How to: Compile Example Code for Project Model Extensibility for information on how to compile and run this sample.

.NET Framework Security

See Also

Reference

VCFileConfiguration Interface

Microsoft.VisualStudio.VCProjectEngine Namespace