Nasıl yapılır: program aracılığıyla projeler oluşturmak
Bir proje oluşturmak için çağrı GetProjectTemplate, döndürülen şablon yollara geçmesi ve AddFromTemplate.
Project şablonları, .vstemplate dosya adı uzantısına sahiptir ve .zip dosyaları içinde depolanır. Dosyasının yolu .vstemplate (.zip dosyası) elde etmek için GetProjectTemplate, kendisine iletmek ve AddFromTemplate biri zaten açık değilse, proje (ve aynı zamanda bir çözüm) oluşturmak için. Her proje için halen açık olan çözüm eklenir ve gerekli sayıda bu işlemi gerçekleştirebilirsiniz.
Tüm diller için project şablonları Program Files\Microsoft Visual Studio 10.0\Common7\IDE\ProjectTemplates\ bulunabilirDil\.
Kendi özel proje şablonları da oluşturabilirsiniz. İçinde depolar şablonlarınızı dizini belirtmek için seçenekleri üzerinde araçları menü. Sol bölmesinde seçenekleri iletişim kutusunu tıklatın Projeler ve çözümler. Şablonlarınızı yolunu Visual Studio kullanıcı proje şablonları kutusu.
Özel proje şablonları gerektirir çakışmasını benzersiz dosya adları, Program Files\Microsoft Visual Studio 10.0\Common7\IDE\ProjectTemplates\ içinde tanımlanan dosya adlarını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.
Not
Gördüğünüz iletişim kutuları ve menü komutları, etkin ayarlarınıza ve ürün sürümüne bağlı olarak Yardım menüsünde açıklanana göre farklılık gösterebilir.Bu yordamlar, genel geliştirme ayarları ile etkin geliştirilmiştir.Ayarlarınızı değiştirmek için alma ve vermeayarları üzerinde araçları menü.Daha fazla bilgi için bkz. Visual Studio ayarları.
Bir proje oluşturma
Program aracılığıyla bir proje oluşturmak için
Başlat Visual Studio ve bir Visual Studio eklenti projesi.
Eklenti için Connect sınıfı, bu konunu sonraki bölümlerinde gösterilen örnek kodu ekleyin.
Eklenti projesinin çalıştırın ve onu etkinleştirmek Add-In Manager.
Bunu yapmak için Add-In Manager üzerinde araçları menü ve eklentiyi seçin.
Örnek
Aşağıdaki örnek GetProjectTemplate ve AddFromTemplate iki konsolu oluşturmak için projeler, bir Visual Basic ve diğer Visual C#, bir çözüm içinde.
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)
createProjectsFromTemplates(_applicationObject)
End Sub
Sub createProjectsFromTemplates(ByVal dte As DTE2)
Try
' Create a solution with two projects in it, based on project
' templates.
Dim soln As Solution2 = CType(DTE.Solution, _
Solution2)
Dim csTemplatePath As String
Dim vbTemplatePath As String
Dim csPrjPath As String = _
"C:\UserFiles\user1\addins\MyCSProject"
Dim vbPrjPath As String = _
"C:\UserFiles\user1\addins\MyVBProject"
' Get the project template path for a C# console project.
' Console Application is the template name that appears in the
' right pane, "CSharp" is the Language(vstemplate) as seen in
' the registry.
csTemplatePath = soln.GetProjectTemplate _
("ConsoleApplication.zip", "CSharp")
MsgBox("C# template path: " & csTemplatePath)
' Get the project template path for a Visual Basic
' console project.
' "vbproj: is the DefaultProjectExtension as seen in the
' registry.
vbTemplatePath = soln.GetProjectTemplate _
("ConsoleApplication.zip", "vbproj")
MsgBox("Visual Basic template path: " & vbTemplatePath)
' Create a new C# console project using the template obtained
' above.
soln.AddFromTemplate(csTemplatePath, csPrjPath, _
"New CSharp Console Project", False)
' Create a new Visual Basic console project using the template
' obtained above.
soln.AddFromTemplate(vbTemplatePath, vbPrjPath, _
"New Visual Basic Console Project", False)
Catch ex As System.Exception
MsgBox("ERROR: " & ex.ToString)
End Try
End Sub
public void OnConnection(object application, ext_ConnectMode
connectMode, object addInInst, ref Array custom)
{
_applicationObject = (DTE2)application;
_addInInstance = (AddIn)addInInst;
createProjectsFromTemplates(_applicationObject);
}
public void createProjectsFromTemplates(DTE2 dte)
{
try
{
// Create a solution with two projects in it, based on project
// templates.
Solution2 soln = (Solution2)dte.Solution;
string csTemplatePath;
string vbTemplatePath;
string csPrjPath = "C:\\UserFiles\\user1\\addins\\MyCSProject";
string vbPrjPath = "C:\\UserFiles\\user1\\addins\\MyVBProject";
// Get the project template path for a C# console project.
// Console Application is the template name that appears in
// the right pane. "CSharp" is the Language(vstemplate) as seen
// in the registry.
csTemplatePath = soln.GetProjectTemplate("ConsoleApplication.zip",
"CSharp");
System.Windows.Forms.MessageBox.Show("C# template path: " +
csTemplatePath);
// Get the project template path for a Visual Basic console
// project.
// "vbproj: is the DefaultProjectExtension as seen in the
// registry.
vbTemplatePath = soln.GetProjectTemplate("ConsoleApplication.zip",
"vbproj");
System.Windows.Forms.MessageBox.Show("Visual Basic template path: " +
vbTemplatePath);
// Create a new C# console project using the template obtained
// above.
soln.AddFromTemplate(csTemplatePath, csPrjPath, "New CSharp
Console Project", false);
// Create a new Visual Basic console project using the template
// obtained above.
soln.AddFromTemplate(vbTemplatePath, vbPrjPath, "New VB Console
Project", false);
}
catch (System.Exception ex)
{
System.Windows.Forms.MessageBox.Show("ERROR: " + ex.Message);
}
}
Ayrıca bkz.
Görevler
Nasıl yapılır: derlemek ve Otomasyon nesne modeli kod örneklerini çalıştırmak
Nasıl yapılır: program aracılığıyla proje öğeleri oluşturun
Kavramlar
Visual Basic ve Visual C# projeleri yönetmek
Visual C++ özellikleri değiştirme