SolutionBuild2.Clean 方法 (Boolean)

为标记的项目删除编译器生成的所有支持文件。

命名空间:  EnvDTE80
程序集:  EnvDTE80(在 EnvDTE80.dll 中)

语法

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

参数

  • WaitForCleanToFinish
    类型:System.Boolean
    可选。确定在生成操作完成前 Build 是否一直保留控件。默认值为 false。

备注

当生成某个项目后,编译器会生成许多支持文件,如 .idl 文件、.obj 文件等。 Clean 方法从标记为生成的所有项目中删除所有此类文件,使项目返回到一种类似于从未被生成的状态。

示例

此示例显示生成依赖项的数量,然后清除该解决方案。 在运行此外接程序之前,在 Visual Studio 集成开发环境 (IDE) 中打开项目。

有关如何作为外接程序运行此示例的更多信息,请参见 如何:编译和运行自动化对象模型代码示例

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 安全性

请参见

参考

SolutionBuild2 接口

Clean 重载

EnvDTE80 命名空间

ShouldBuild