Aracılığıyla paylaş


Solution2.GetProjectTemplate Yöntem

Belirtilen proje şablonu için bir yol verir.

Ad alanı:  EnvDTE80
Derleme:  EnvDTE80 (EnvDTE80.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.

Aşağıdaki örnek, bir çözüm oluşturmak ve bir konsol uygulaması proje eklemek gösterilmiştir.

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 Visual Basic 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
//make sure to add this reference to your project references
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{
        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);
    }
}

.NET Framework Güvenliği

Ayrıca bkz.

Başvuru

Solution2 Arabirim

EnvDTE80 Ad Alanı