Visual Studio uzantısının anatomisi

VSIX paketi, bir veya daha fazla Visual Studio uzantısını ve Visual Studio'da uzantıları sınıflandırmak ve yüklemek için kullanılan meta verileri içeren bir .vsix dosyasıdır. VSIX paket biçimi, Zip dosyalarını açabilen herhangi bir araç tarafından açılabilmesi anlamına gelen Open Packaging Conventions (OPC) standardını izler.

Uzantı projesi, benzersiz hale getiren birkaç ek özelliği olan bir C# projesidir. Aşağıdaki video, uzantı projelerinin nasıl çalıştığını daha iyi anlamak için bir uzantı projesini inceler:

Dosya yapısı

VSIX Projesi w/Command (Topluluk) şablonunu kullanarak yeni uzantılar oluştururken, dosya yapısı aşağıdaki gibi görünür:

VSIX projesinin dosya yapısı.

.vsixmanifest dosyası ana dosyadır. Visual Studio tarafından kullanılan uzantı hakkında bilgi içeren bir XML dosyasıdır. Uzantının tüm bileşenleri .vsixmanifest dosyasına kaydedilir. VsIX projesindeki tek zorunlu dosyadır.

VSCommandTable.vsct dosyası, komutların bildirildiği yerdir. Bu bir XML dosyasıdır ve düğme komutlarının, menülerin, klavye kısayol bağlamalarının ve daha fazlasının tanımlarını içerir. Dosya, içeriğini Visual Studio'nın komut tablosu menü yapısının tamamını oluşturmak için kullandığı çıkış .dll bir blobda derler. Bu dosya yalnızca komut tablosundaki bileşenleri bildirir; komut çağrılarını işlemez.

*Package.cs dosyası, çoğu uzantının giriş noktası olan Package sınıfıdır. Burada genellikle komut işleyicileri, araç pencereleri, seçenekler sayfaları, hizmetler ve kayıtlı diğer bileşenler bulunur.

Derleme

Proje, geçerli çözüm derleme yapılandırmanıza bağlı olarak /bin/debug veya /bin/release klasöründe bulunan bir .vsix dosyasında derlenmiştir. Visual Studio uzantısı geliştirme iş yükü, VSIX proje çeşidini işlemek için ayrılmış MSBuild hedefleri ve görevleri sağlar.

VSIX projesi oluşturulduğunda otomatik olarak Deneysel Örneğe dağıtılır. Bu, VSIX proje ayarlarında denetlenebilir:

VSIX proje özellikleri.

Deneysel örnek

Visual Studio geliştirme ortamınızı değiştirebilecek test edilmemiş uygulamalardan korumak için VSSDK, deneme yapmak için kullanabileceğiniz deneysel bir alan sağlar. Visual Studio'yu her zamanki gibi kullanarak yeni uygulamalar geliştirirsiniz, ancak bunları bu Deneysel Örneği kullanarak çalıştırırsınız.

VSIX paketi olan her uygulama, Visual Studio deneysel örneğini hata ayıklama modunda başlatır.

Visual Studio'nun deneysel örneğini belirli bir çözümün dışında başlatmak istiyorsanız, komut penceresinde aşağıdaki komutu çalıştırın:

devenv.exe /RootSuffix Exp

Daha fazla genişletilebilirlik kavramı için bu araç setini takip etmek için kullanışlı kaynaklara göz atın.