Aracılığıyla paylaş


Solution3.GetProjectTemplate Yöntem (String, String)

Belirtilen proje şablonu için bir yol verir.

Ad alanı:  EnvDTE90
Derleme:  EnvDTE90 (EnvDTE90.dll içinde)

Sözdizimi

'Bildirim
Function GetProjectTemplate ( _
    TemplateName As String, _
    Language As String _
) As String
string GetProjectTemplate(
    string TemplateName,
    string Language
)
String^ GetProjectTemplate(
    String^ TemplateName, 
    String^ Language
)
abstract GetProjectTemplate : 
        TemplateName:string * 
        Language:string -> string 
function GetProjectTemplate(
    TemplateName : String, 
    Language : String
) : String

Parametreler

  • Language
    Tür: System.String
    Şablon yazmak için kullanılan dil.

Dönüş Değeri

Tür: System.String
Proje şablonu tam adı.

Notlar

Project şablonları, zip dosyaları olarak depolanır.Bu yöntemin adı ve dil ile proje için sorar ve şablonun yolunu döndürür.

Parametrelerini GetProjectTemplate aşağıda gösterildiği gibi birkaç farklı yolla sağlanabilir:

  • "CSharp" içinde geçmesi olarak Language parametresi ve ZIP dosyasının adı TemplateName.

    GetProjectTemplate("PocketPC2003-ClassLibrary.zip", "CSharp");
    
  • "CSharp" içinde geçmesi olarak Language parametresi ve kısmi dosya yolu; " PocketPC2003\ClassLibrary.vstemplate"benzersiz olarak belirtmek için TemplateName.

    GetProjectTemplate("PocketPC2003\ClassLibrary.vstemplate", "CSharp");//partial file path
    
  • "CSharp" dizesinde geçmesi olarak Language parametresi ve dize "Pocket pc 2003 Class Library" için TemplateName parametresi."Pocket pc 2003 Class Library" dizesi klasör sıradüzeninin türetilir ve kullanıcı arabirimi (UI) dizesi adlandırılır.Diğer kullanıcı Arabirimi dizeleri "Console Application" ve "Windows uygulaması" örnektir.

    [!NOT]

    UI dizeleri yerel ayarına göre değişir.ZIP dosya adını kullanarak geçirmek için en güvenli yolu olan TemplateName parametresi.

    GetProjectTemplate("Pocket PC 2003 Class Library", "CSharp");
    
  • "CSharp" dizesinde geçmesi olarak Language parametresi ve "PocketPC2003\Pocket pc 2003 Class Library" dizesi için TemplateName parametresi.Bu UI dize ve benzersiz olarak şablonu belirtmek için kısmi bir yol içerir.

    GetProjectTemplate("PocketPC2003\Pocket PC 2003 Class Library", "CSharp");
    

Kendi özel proje şablonları da oluşturabilirsiniz.İçinde depolar şablonlarınızı dizini belirtmek için seçenekleri üzerinde araçları menü.Sol bölmesindeki seçenekleri iletişim kutusunu tıklatın Projeler ve çözümler.Şablonlarınızı yolunu yazın Visual Studio kullanıcı proje şablonları kutusu.Alternatif olarak, varsayılan konumları kabul edebilirsiniz.

Özel şablonlar çakışmasını benzersiz dosya adları ile tanımlanan dosya adları gerektirir:

  • <sürücü>: \Program Files\Microsoft Visual Studio 8\Common7\IDE\ProjectTemplates\Dil

Uzun dosya adlarını (karşıt olarak 8nokta3) kullandığınızdan emin olun.Daha fazla bilgi için bkz. Creating Project and Item Templates.

Örnekler

Bu eklenti kodu çalıştırma hakkında daha fazla bilgi için bkz: Nasıl yapılır: derlemek ve Otomasyon nesne modeli kod örneklerini çalıştırmak.

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 C# Console
    ' project to it.
    Try
        Dim soln As Solution3 = CType(DTE.Solution, Solution3)
        Dim csTemplatePath As String
        ' This path must exist on your computer.
        ' Replace <file path> below with an actual path.
        Dim csPrjPath As String = "<file path>"
        MsgBox("starting")
        ' Get the project template path for a C# console project.
        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)
        MsgBox("done")
    Catch ex As System.Exception
        MsgBox(ex.ToString)
    End Try
End Sub
using System.Windows.Forms;
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{
        Solution3 soln = (Solution3)_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);
    }
}

.NET Framework Güvenliği

Ayrıca bkz.

Başvuru

Solution3 Arabirim

GetProjectTemplate Fazla Yük

EnvDTE90 Ad Alanı

Diğer Kaynaklar

Nasıl yapılır: derlemek ve Otomasyon nesne modeli kod örneklerini çalıştırmak