다음을 통해 공유


BuildDependency.RemoveProject 메서드

프로젝트의 빌드 순서를 지정하는 목록에서 프로젝트를 제거합니다.

네임스페이스:  EnvDTE
어셈블리:  EnvDTE(EnvDTE.dll)

구문

‘선언
Sub RemoveProject ( _
    ProjectUniqueName As String _
)
void RemoveProject(
    string ProjectUniqueName
)
void RemoveProject(
    String^ ProjectUniqueName
)
abstract RemoveProject : 
        ProjectUniqueName:string -> unit 
function RemoveProject(
    ProjectUniqueName : String
)

매개 변수

  • ProjectUniqueName
    형식: System.String
    필수 요소.UniqueName 속성에서 종속 프로젝트로 추가할 프로젝트의 이름입니다.

예제

이 예제는 Visual Studio .NET 2003에서만 작동합니다.자세한 내용은 Migrating Code that Creates Projects by Using Templates를 참조하십시오.

Sub RemoveProjectExample(ByVal dte As DTE)

    ' Create a new solution.
    Dim soln As Solution = dte.Solution
    Dim solnName As String = "NewSolution.sln"
    Dim tempPath As String = System.IO.Path.GetTempPath()
    soln.Create(tempPath, solnName)

    ' Create two new Visual Basic Console Application projects.
    Dim templatePath As String = <template path>
    templatePath &= "ConsoleApplication.vsz"
    Dim projName As String = "Project1"
    soln.AddFromTemplate(templatePath, tempPath & projName, projName)
    Dim proj1 As Project = soln.Item(1)
    projName = "Project2"
    soln.AddFromTemplate(templatePath, tempPath & projName, projName)
    Dim proj2 As Project = soln.Item(2)

    ' Make Project1 dependent on Project2.
    Dim bd As BuildDependency = _
        soln.SolutionBuild.BuildDependencies.Item(proj1.UniqueName)
    bd.AddProject(proj2.UniqueName)

    ' Enumerate Project1's dependencies.
    Dim depends As String = ""
    Dim proj As Project
    For Each proj In CType(bd.RequiredProjects, Array)
        depends &= proj.Name & vbCrLf
    Next

    MsgBox(bd.Project.Name & " has the following dependencies:" & _
        vbCrLf & vbCrLf & depends)

    If MsgBox("Remove dependency on " & proj2.Name & " from " & _
        bd.Project.Name & "?", MsgBoxStyle.YesNo) = _
        MsgBoxResult.Yes Then
        bd.RemoveProject(proj2.UniqueName)

        ' Enumerate Project1's dependencies.
        depends = ""
        For Each proj In CType(bd.RequiredProjects, Array)
            depends &= proj.Name & vbCrLf
        Next

        MsgBox(bd.Project.Name & " has the following dependencies:" & _
            vbCrLf & vbCrLf & depends)
    End If

End Sub
public void RemoveProjectExample(DTE dte)
{
    // Create a new solution.
    Solution soln = dte.Solution;
    string solnName = "NewSolution.sln";
    string tempPath = System.IO.Path.GetTempPath();
    soln.Create(tempPath, solnName);

    // Create two new C# Console Application projects.
    string templatePath = <template path>;
    templatePath += "CSharpConsole.vsz";
    string projName = "Project1";
    soln.AddFromTemplate(templatePath, tempPath + projName, 
        projName, false);
    Project proj1 = soln.Item(1);
    projName = "Project2";
    soln.AddFromTemplate(templatePath, tempPath + projName, 
        projName, false);
    Project proj2 = soln.Item(2);

    // Make Project1 dependent on Project2.
    BuildDependency bd = 
        soln.SolutionBuild.BuildDependencies.Item(proj1.UniqueName);
    bd.AddProject(proj2.UniqueName);

    // Enumerate Project1's dependencies.
    string depends = "";
    foreach (Project proj in (Array)bd.RequiredProjects)
    {
        depends += proj.Name + Environment.NewLine;
    }

    MessageBox.Show(bd.Project.Name + 
        " has the following dependencies:" + Environment.NewLine + 
        Environment.NewLine + depends);

    if (MessageBox.Show("Remove dependency on " + proj2.Name + 
        " from " + bd.Project.Name + "?", "", 
        MessageBoxButtons.YesNo) == DialogResult.Yes)
    {
        bd.RemoveProject(proj2.UniqueName);

        // Enumerate Project1's dependencies.
        depends = "";
        foreach (Project proj in (Array)bd.RequiredProjects)
        {
            depends += proj.Name + Environment.NewLine;
        }

        MessageBox.Show(bd.Project.Name + 
            " has the following dependencies:" + Environment.NewLine + 
            Environment.NewLine + depends);
    }
}

.NET Framework 보안

  • 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용을 참조하십시오.

참고 항목

참조

BuildDependency 인터페이스

EnvDTE 네임스페이스

기타 리소스

방법: 자동화 개체 모델 코드의 예제 컴파일 및 실행