Project genişletilebilirliği Giriº
Basitçe VSLangProj derlemelerine başvurular için projeekleyerek nesne modelinde kullanılabilir: VSLangProj.dll, VSLangProj2.dll, VSLangProj80.dll, VSLangProj90a.dll ve VSLangProj100.dll derlemeler. Daha fazla bilgi için bkz. Nasıl yapılır: ekleme veya kaldırma başvurularını Add Reference iletişim kutusunu kullanarak. Bu nesne modeli eklentiler ve her türlü genişletmek veya otomatikleştirmek IDE gerekir proje için kullanılabilir olduğu anlamına gelir. Konuları örneklerde yazılmış Visual Basic ve Visual C# diller. Örnekleri ç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. Herhangi bir eklenti yazılabilir Visual Studio , dil gibi barındırılan Visual Basic, Visual C#, ve Visual C++. Başvuru konuları için VSLangProj, VSLangProj2, VSLangProj80, VslangProj90 ve VslangProj100 üyeleri bu dillerin her birinde için sözdizimi dahil. Otomasyon yeteneklerini ve otomasyon proje türleri açıklaması için bkz: Eklentiler ve sihirbazlar oluşturma.
VSLangProj ad alanları
Tüm sınıflar, arabirimler ve numaralandırma için bu ad alanları içeren Visual Basic ve Visual C# projeleri. isim uzayıalanındaki nesneleri tam listesi için bkz: Visual Basic ve Visual C# geniþletilebilirlik nesne modeli projeler için.
EnvDTE montajý ile VSLangProj montajlarý kullanarak olası hata
Bir veya daha fazlasını VSLangProj derlemeler başvuran bir proje oluşturmak ve EnvDTE derleme, zaman zaman alabileceğini aşağıdaki hata zamanında:
"İşlenmeyen özel durum: System.IO.FileNotFoundException: dosyası yüklenirken hata oluştu ' EnvDTE, sürüm 7.0.3300.0 ="
Bu hata nedeniyle çalışma zamanı tür çözüm çakışması var. Diğer bir deyişle, sürüm , EnvDTE ile birlikte Visual Studio 2005 8.0.xx olduğu halde proje yapılandırma başvurusu önceki bir sürüm bu derleme, sürüm 7.0.xx için arıyor. Bu sorunu gidermek için bir bağlama yeniden yönlendirmesi için yeni sürüm olan ekleme EnvDTE proje yapılandırma (.config) dosyası için. Bu olanak Visual Studio 'ın yeni sürüm yüklemek için EnvDTE ve hata oluşmasını engellemek.
Bunu yapmak için "Uygulama yapılandırma dosyası" proje ve değiştirmek için daha sonra içeriğini aşağıdaki ekleyin:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-
com:asm.v1" appliesTo="v2.0.50318">
<dependentAssembly>
<assemblyIdentity name="EnvDTE" publicKeyToken=
"b03f5f7f11d50a3a"/>
<bindingRedirect oldVersion="7.0.3300.0"
newVersion="8.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
VSProject2 nesnesi
Bu nesne , geniþletilebilirlik modeli, diğer nesnelere erişim sağlar. dte nesne üst düzey nesne olan Visual Studio otomasyon modeli. Genel geniþletilebilirlik modeli genel bir proje temsil Project nesne. Project nesne olan bir Object özellik. Bu özellik türü, çalışma zamanında projedil tarafından belirlenir. İçinde bir Visual Basic veya Visual C# proje, Objecttüründe bir nesne özellik döndürür VSProject2. Bu tür yana Object özellik nesnesi, yazmak için başvuru dönüştürmelisiniz VSProject2. Başvuru sonra VSProject2 öğe, projeözellikleri, yapılandırmaları, dosyaları, klasörleri, Imports deyimleri ve başvurular işleyebilirsiniz.
Daha fazla bilgi için bkz. VSProject2 nesne giriş.
Başvurular ve başvuru nesneleri
References özelliktarafından bulunan, VSProject2tutan koleksiyon nesne, Reference3 nesneler. Reference3 nesne bir proje başvurusu temsil eder ve öncelikle olduğu bir salt okunurnesne destekleyen bir Remove yöntem. References nesne olan desteği ekleme başvuruları (COM,.net derlemeleri, ActiveX, diğer projeleri) ve olayları (ekleme, kaldırma ve değiştirme başvuruları) yaratamazsınız.
References nesne proje Web başvuru içermiyor. Bir proje Web başvurular erişerek elde edilebilir ProjectItems özellik WebReferencesFolder özellik.
Daha fazla bilgi ve kod örnekleri için bkz: Reference ve Reference3 nesne, References koleksiyon, References özellik, ve WebReferencesFolder özellik.
Imports nesnesi
ImportsTarafından bulunan özellik VSProject2 nesne koleksiyon korur Imports ifadeleri bu uygulamak tam bir Visual Basic proje. Imports hesap özeti karşılık gelen bu koleksiyoneklenirse Imports hesap özeti (örneğin, Imports VSLangProj) kod dosyasına eklenmeleri gerekmez. Bu nesne ekleme ve Imports deyimlerini kaldırmayı ve yanıt ekleme ve deyimleri kaldırma olaylarını tetiklemeye yönelik destekler. İçinde eşdeğeri yoktur bir Visual C# projeve VSProject2.Imports özellik döndürür Nothing veya null için uygulandığında bir Visual C# proje. Daha fazla bilgi için bkz. Imports.
VSProjectItem ve BuildManager nesneleri
VSProjectItem nesne VSProject2 nesne. Genel geniþletilebilirlik modeli, genel olarak ProjectItem nesne projeöğetemsil eder. Object özellik , nesne türü ve içinde bir Visual Basic veya Visual C# proje, bu özellik türü olan VSProjectItem. VSProjectItemöğe ana projeve projeve bu öğeüzerinde özel bir aracın yürütülmesini zorlar yöntem bağlantı özellikleri nesne içerir. BuildManager nesne işleme özel bir araç çıktı. Daha fazla bilgi için bkz: RunCustomTool yöntem, BuildManager nesne giriş, VSProjectItem nesne, ve BuildManager nesne.
Properties özelliği
Genel bir geniþletilebilirlik modeli olan bir Propertiesüç nesne özellik :
Project nesne Bu nesne özelliklerinde bulunan özellikler için eşdeğer Ortak özellikler IDE içindeki projeözellik sayfaları iletişim kutusu .
Configuration nesne Bu nesne özelliklerinde bulunan özellikler için eşdeğer Yapılandırma özellikleri IDE içindeki projeözellik sayfaları iletişim kutusu .
ProjectItem nesne Bu nesne özelliklerinde bulunan özellikler için eşdeğer özelliklerini projeöğe seçildiğindepencere Solution Explorer.
Her iki durumda Properties özellik . A Property nesne elde edilebilir koleksiyon özellik1 tabanlı dizin veya adını belirterek. koleksiyon içeriğini dile bağlıdır. proje öğeleri durumunda, içeriği de öğe bir dosya veya klasör olmasına göre değişir.
Ayrıca bkz.
Kavramlar
Visual Studio Otomasyon tayfını