IVsProjectStartupServices Antarmuka
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Memungkinkan ekstensibilitas proyek oleh pengembang lain.
public interface class IVsProjectStartupServices
public interface class IVsProjectStartupServices
__interface IVsProjectStartupServices
[System.Runtime.InteropServices.Guid("82780F79-A3ED-4B7F-90C0-5FEE14CBB53E")]
[System.Runtime.InteropServices.InterfaceType(1)]
public interface IVsProjectStartupServices
[System.Runtime.InteropServices.Guid("82780F79-A3ED-4B7F-90C0-5FEE14CBB53E")]
[System.Runtime.InteropServices.InterfaceType(System.Runtime.InteropServices.ComInterfaceType.InterfaceIsIUnknown)]
public interface IVsProjectStartupServices
[<System.Runtime.InteropServices.Guid("82780F79-A3ED-4B7F-90C0-5FEE14CBB53E")>]
[<System.Runtime.InteropServices.InterfaceType(1)>]
type IVsProjectStartupServices = interface
[<System.Runtime.InteropServices.Guid("82780F79-A3ED-4B7F-90C0-5FEE14CBB53E")>]
[<System.Runtime.InteropServices.InterfaceType(System.Runtime.InteropServices.ComInterfaceType.InterfaceIsIUnknown)>]
type IVsProjectStartupServices = interface
Public Interface IVsProjectStartupServices
- Atribut
Keterangan
IVsProjectStartupServices adalah antarmuka opsional yang memungkinkan VSPackage pihak ketiga untuk mendaftarkan GUID layanan yang proyek Anda pertahankan ke dalam file proyek Anda sehingga setiap kali proyek Anda dimuat, Anda memuat informasi tersebut ke dalam file proyek Anda dan QueryService untuk GUID tersebut. Ini memungkinkan VSPackage pihak ketiga untuk ditunda dimuat pada saat proyek Anda dimuat lagi. Dengan cara ini, VSPackage pihak ketiga menghindari penggunaan opsi Preload=1 yang sekarang usang sebelumnya di registri. Namun VSPackage terus memastikan bahwa itu dimuat pada saat proyek Anda dimuat.
Proyek Anda hanya perlu memanggilnya QueryService melewati parameter (guidService, IID_IUnknown, &punk); tidak ada upaya untuk memanggil metode pada layanan. VSPackage saat dimuat kemudian dapat menghitung proyek yang dimuat dan melakukan operasi yang sesuai (misalnya, menghubungkan ke peristiwa proyek).
Antarmuka IVsProjectStartupServices dapat diambil dari hierarki proyek dengan cara berikut:
GetProperty(IVsProjectStartupServices, IVsProjectStartupServices...)
IVsProjectStartupServices digunakan terutama untuk ekstensibilitas jika Anda membuat jenis proyek yang dapat diperluas oleh pengembang lain.
Catatan Bagi Implementer
Diimplementasikan pada IVsHierarchy untuk membuat proyek Anda dapat diperluas oleh pengembang lain.
Metode
| AddStartupService(Guid) |
Menambahkan layanan pihak ketiga ke daftar layanan yang akan dimulai ketika proyek dibuat dan memastikan bahwa semua layanan pihak ketiga dimulai. |
| GetStartupServiceEnum(IEnumProjectStartupServices) |
Digunakan untuk mencari elemen array layanan pihak ketiga oleh GUID. |
| RemoveStartupService(Guid) |
Menghapus GUID ID layanan dari daftar layanan pihak ketiga yang akan dimulai dan merilis layanan jika telah dimuat. |