Udostępnij za pośrednictwem


Metoda Solution2.AddFromTemplate — (String, String, String, Boolean)

Kopii istniejącego projektu, plik, a wszystkie elementy lub podkatalogi zawiera w określonej lokalizacji i dodaje go do roztworu.

Przestrzeń nazw:  EnvDTE80
Zestaw:  EnvDTE80 (w EnvDTE80.dll)

Składnia

'Deklaracja
Function AddFromTemplate ( _
    FileName As String, _
    Destination As String, _
    ProjectName As String, _
    Exclusive As Boolean _
) As Project
Project AddFromTemplate(
    string FileName,
    string Destination,
    string ProjectName,
    bool Exclusive
)
Project^ AddFromTemplate(
    [InAttribute] String^ FileName, 
    [InAttribute] String^ Destination, 
    [InAttribute] String^ ProjectName, 
    [InAttribute] bool Exclusive
)
abstract AddFromTemplate : 
        FileName:string * 
        Destination:string * 
        ProjectName:string * 
        Exclusive:bool -> Project 
function AddFromTemplate(
    FileName : String, 
    Destination : String, 
    ProjectName : String, 
    Exclusive : boolean
) : Project

Parametry

  • FileName
    Typ: System.String
    Wymagane.Pełna ścieżka i nazwa pliku z rozszerzeniem pliku szablonu projektu.
  • Destination
    Typ: System.String
    Wymagane.Pełna ścieżka katalogu, w którym skopiować zawartość FileName.
  • ProjectName
    Typ: System.String
    Wymagane.Nazwa pliku projektu w katalogu docelowym.Powinno to obejmować rozszerzenie.Wyświetlana nazwa pochodzi od ProjectName.
  • Exclusive
    Typ: System.Boolean
    Opcjonalne.Wskazuje, czy projekt ładuje w bieżącym rozwiązaniem lub własnych; trueJeśli bieżącym rozwiązaniem jest zamknięty, a projekt jest dodawany do nowe rozwiązanie, false , jeśli projekt jest dodawany do roztworu istniejących, Otwórz.

Wartość zwracana

Typ: EnvDTE.Project
A Project object.

Uwagi

Nazwa projektu, wyświetlane w Solution Explorer jest ProjectName bez rozszerzenia pliku.AddFromTemplatekończy się niepowodzeniem, jeśli nową nazwę pliku projektu już istnieje w lokalizacji docelowej.

[!UWAGA]

Dla Visual Basic i Visual C# projektów: zwrócony Project obiektu ma wartość Nothing lub nullodwołanie o wartości null (Nothing w języku Visual Basic).Można znaleźć utworzonego Project obiektu przez iteracja DTE.Solution.Projects kolekcji za pomocą ProjectName parametr do identyfikowania nowo utworzonego projektu.

Przykłady

Aby uzyskać informacje na temat uruchamiania tego dodać kod, zobacz Jak: skompilować i uruchomić przykłady kodu modelu obiektu automatyzacji.

Poniższy przykład tworzy rozwiązania i doda projekt aplikacji konsoli do niego.

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)
    SolutionExample(_applicationObject)
End Sub

Sub SolutionExample(ByVal dte As DTE2)
    ' This function creates a solution and adds a Visual Basic Console
    ' project to it.
    Try
        Dim soln As Solution2 = CType(DTE.Solution, Solution2)
        Dim vbTemplatePath As String
        ' This path must exist on your computer.
        ' Replace <file path> below with an actual path.
        Dim vbPrjPath As String = "<file path>"
        MsgBox("starting")
        ' Get the project template path for a Visual Basic console project.
        vbTemplatePath = soln.GetProjectTemplate _
        ("ConsoleApplication.zip", "VisualBasic")
        ' Create a new C# Console project using 
        ' the template obtained above.
        soln.AddFromTemplate(vbTemplatePath, vbPrjPath, _
        "New Visual Basic Console Project", False)
        MsgBox("done")
    Catch ex As System.Exception
        MsgBox(ex.ToString)
    End Try
End Sub
public void OnConnection(object application,
 Extensibility.ext_ConnectMode connectMode, object addInInst,
 ref System.Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    // Pass the applicationObject member variable to the code example.
    SolutionExample((DTE2)_applicationObject);
}

public void SolutionExample(DTE2 dte)
{
    // This function creates a solution and adds a Visual C# Console
    // project to it.
    try{
        Solution2 soln = (Solution2)_applicationObject.Solution;
        String csTemplatePath;
        // The file path must exist on your computer.
        // Replace <file path> below with an actual path.
        String csPrjPath = "<file path>";
    "<file path>MessageBox.Show("Starting...");
"<file path>"<file path>csTemplatePath = 
soln.GetProjectTemplate("ConsoleApplication.zip", "CSharp");
        // Create a new C# Console project using the template obtained 
        // above.
        soln.AddFromTemplate(csTemplatePath, csPrjPath,
 "New CSharp Console Project", false);
        MessageBox.Show("Done!");
    }
    catch(SystemException ex)
    {
        MessageBox.Show("ERROR: " + ex);
    }
}

Zabezpieczenia programu .NET Framework

Zobacz też

Informacje

Solution2 Interfejs

Przeciążenie AddFromTemplate

Przestrzeń nazw EnvDTE80