Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Paket kontrol sumber adalah VSPackage yang menggunakan layanan yang disediakan Visual Studio IDE. Sebagai gantinya, paket kontrol sumber menyediakan fungsionalitasnya sebagai layanan kontrol sumber. Selain itu, paket kontrol sumber adalah alternatif yang lebih serbaguna daripada plug-in kontrol sumber untuk mengintegrasikan kontrol sumber ke Visual Studio.
Plug-in kontrol versi yang mengimplementasikan API Plug-in Kontrol Versi mematuhi kontrak yang ketat. Misalnya, plug-in tidak dapat menggantikan antarmuka pengguna (UI) Visual Studio default. Selain itu, API Plug-in Kontrol Sumber tidak mengaktifkan plug-in untuk menerapkan model kontrol sumbernya sendiri. Namun, paket kontrol sumber mengatasi kedua batasan ini. Paket kontrol sumber memiliki kontrol penuh atas pengalaman kontrol sumber pengguna Visual Studio. Selain itu, paket kontrol sumber dapat menggunakan model dan logika kontrol sumbernya sendiri, dan dapat menentukan semua antarmuka pengguna terkait kontrol sumber.
Komponen Paket Kontrol Sumber
Seperti yang ditunjukkan dalam diagram arsitektur, komponen Visual Studio bernama Stub Kontrol Sumber adalah VSPackage yang mengintegrasikan paket kontrol sumber dengan Visual Studio.
Stub Kontrol Sumber menangani tugas berikut.
Menyediakan UI umum yang diperlukan untuk pendaftaran paket kontrol sumber.
Memuat paket kontrol sumber.
Mengatur paket kontrol sumber sebagai aktif/tidak aktif.
Stub Kontrol Sumber mencari layanan aktif untuk paket kontrol sumber dan merutekan semua panggilan layanan masuk dari IDE ke paket tersebut.
Paket Adaptor Kontrol Sumber adalah paket kontrol sumber khusus yang disediakan Visual Studio. Paket ini adalah komponen pusat untuk mendukung plug-in kontrol sumber berdasarkan API Plug-in Kontrol Sumber. Ketika pengaya pengendalian sumber adalah pengaya aktif, Stub Kontrol Sumber mengirimkan peristiwanya ke Paket Adaptor Kontrol Sumber. Pada gilirannya, Paket Adaptor Kontrol Sumber berkomunikasi dengan plug-in kontrol sumber dengan menggunakan API Plug-in Kontrol Sumber dan juga menyediakan UI default yang umum untuk semua plug-in kontrol sumber.
Ketika paket kontrol sumber adalah paket aktif, Stub Kontrol Sumber langsung berkomunikasi dengan paket tersebut melalui antarmuka Paket Kontrol Sumber Visual Studio SDK. Paket kontrol sumber bertanggung jawab untuk menghosting UI kontrol sumbernya sendiri.
Untuk paket kontrol sumber, Visual Studio tidak menyediakan kode kontrol sumber atau API untuk integrasi. Bandingkan ini dengan pendekatan yang diuraikan dalam Membuat Plug-in Kontrol Sumber di mana dalam plug-in kontrol sumber harus menerapkan serangkaian fungsi dan callback yang ketat.
Seperti VSPackage apa pun, paket kontrol sumber adalah objek COM yang dapat dibuat dengan menggunakan
CoCreateInstance. VSPackage membuat dirinya tersedia untuk Visual Studio IDE dengan menerapkan IVsPackage. Ketika sebuah instans telah dibuat, VSPackage menerima situs pointer dan antarmuka IServiceProvider yang menyediakan akses VSPackage ke layanan dan antarmuka yang tersedia di IDE.Menulis paket kontrol sumber berbasis VSPackage memerlukan keahlian pemrograman yang lebih canggih daripada menulis plug-in berbasis API Plug-in Kontrol Sumber.