SolutionBuild2.Clean Method

Deletes all compiler-generated support files for marked projects.

Namespace:  EnvDTE80
Assembly:  EnvDTE80 (in EnvDTE80.dll)

Syntax

'Declaration
Sub Clean ( _
    WaitForCleanToFinish As Boolean _
)
void Clean(
    bool WaitForCleanToFinish
)
void Clean(
    [InAttribute] bool WaitForCleanToFinish
)
abstract Clean : 
        WaitForCleanToFinish:bool -> unit
function Clean(
    WaitForCleanToFinish : boolean
)

Parameters

  • WaitForCleanToFinish
    Type: System.Boolean

    Optional. Determines whether Build retains control until the build operation is complete. Default value is false.

Remarks

When a project is built, the compiler can generate numerous support files, such as, .idl files, .obj files, and so forth. The Clean method deletes all such files from all projects that are marked for build, returning the project to a state similar to never having been built.

Examples

This example displays the number of build dependencies, and it then cleans the solution. Open a project in the Visual Studio integrated development environment (IDE) before running this add-in.

For more information about how to run this example as an add-in, see How to: Compile and Run the Automation Object Model Code Examples.

Imports EnvDTE
Imports EnvDTE80
Public Sub OnConnection(ByVal application As Object, _
 ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
 ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    _applicationObject = CType(application, DTE2)
    _addInInstance = CType(addInInst, AddIn)
    SolutionBuildCleanExample(_applicationObject)
End Sub
Sub SolutionBuildCleanExample(ByVal dte As DTE2)
    ' Open a solution in Visual Studio before running this example.
    Try
        Dim soln As Solution2 = CType(_applicationObject.Solution, _
        Solution2)
        Dim sb As SolutionBuild2
        Dim bld As BuildDependencies
        Dim p1 As Project = soln.Projects.Item(1)
        sb = CType(soln.SolutionBuild, SolutionBuild2)
        bld = sb.BuildDependencies
        MsgBox("The project " & bld.Item(1).Project.Name & " has "  _
        & bld.Count.ToString() & " build dependencies.")
        MsgBox("Clean the solution...")
        sb.Clean()
    Catch ex As System.Exception
        MsgBox(ex.ToString)
    End Try
End Sub
using EnvDTE;
using EnvDTE80;
using System.Windows.Forms;
public void OnConnection(object application, 
ext_ConnectMode connectMode, object addInInst, ref Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    SolutionBuildCleanExample(_applicationObject);
}
public void SolutionBuildCleanExample(DTE2 dte)
{
    try
    {
        Solution2 soln = (Solution2)_applicationObject.Solution;
        SolutionBuild2 sb;
        BuildDependencies bld;
        Project p1 = soln.Projects.Item(1);
        // Open a solution in Visual Studio before 
        // running this example.
        sb = (SolutionBuild2)soln.SolutionBuild;
        bld = sb.BuildDependencies;
        MessageBox.Show("The project " + bld.Item(1).Project.Name 
+ " has " + bld.Count.ToString() + " build dependencies.");
        MessageBox.Show("Clean the solution...");
        sb.Clean(true);
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

.NET Framework Security

See Also

Reference

SolutionBuild2 Interface

EnvDTE80 Namespace

ShouldBuild