Bagikan melalui


ProvideObjectAttribute Kelas

Definisi

Menginformasikan Visual Studio bahwa VSPackage menyediakan objek yang dapat dibuat dari ILocalRegistryantarmuka. Kelas ini tidak dapat diwariskan.

public ref class ProvideObjectAttribute sealed : Microsoft::VisualStudio::Shell::RegistrationAttribute
public ref class ProvideObjectAttribute sealed : Microsoft::VisualStudio::Shell::RegistrationAttribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)]
public sealed class ProvideObjectAttribute : Microsoft.VisualStudio.Shell.RegistrationAttribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true, Inherited=true)>]
type ProvideObjectAttribute = class
    inherit RegistrationAttribute
Public NotInheritable Class ProvideObjectAttribute
Inherits RegistrationAttribute
Warisan
ProvideObjectAttribute
Atribut

Contoh

Anda dapat menemukan implementasi ProvideObjectAttribute kelas dalam sampel terkelola. Lokasi standar untuk ini dan semua atribut lain yang digunakan untuk pendaftaran otomatis berdekatan Microsoft.VisualStudio.Package dengan implementasi kelas di VsPkg.cs, VsPkg.vb, atau VsPkg.cpp, tergantung pada bahasa yang digunakan dalam sampel.

Keterangan

Kapan Harus Memanggil

Terapkan ProvideObjectAttribute atribut ke kelas turunan Anda Microsoft.VisualStudio.Packagejika menyediakan objek yang dapat dibuat dari ILocalRegistryantarmuka.

Penggunaan Dasar

Kelas ini ProvideObjectAttribute memberi tahu Visual Studio bahwa ia menyediakan objek yang dapat dibuat dari ILocalRegistryantarmuka. Selalu gunakan atribut ini daripada mendaftarkan objek secara global di bawah bagian HKEY_CLASSES_ROOT\CLSID registri. ProvideObjectAttributeGunakan , untuk memodifikasi Microsoft.VisualStudio.Packagekelas -turunan, atau kelas yang mengimplementasikan IVsPackage.

Kelas atribut ini hanya digunakan untuk menyediakan data untuk alat pendaftaran eksternal seperti regpkg.exe. Ini tidak berpengaruh pada perilaku run-time VSPackage. Untuk informasi selengkapnya, lihat Mendaftarkan VSPackages.

Catatan

C# secara otomatis menambahkan kata "Atribut" ke nama kelas atribut apa pun. Dalam kode C#, lihat atribut ini sebagai ProvideObject.

Entri Registri

  • Entri registri berikut dibuat oleh ProvideObjectAttribute kelas :

  • <VSROOT>\CLSID\{ObjectGuid}

  • <VSROOT>\CLSID\{ObjectGuid}\@=ObjectType.FullName

  • <VSROOT>\CLSID\{ObjectGuid}\InprocServer32=mscoree.dll

  • <VSROOT>\CLSID\{ObjectGuid}\Class=ObjectType.FullName

  • <VSROOT>\CLSID\{ObjectGuid}\Assembly=ObjectType.Assembly.FullName

  • <VSROOT>\CLSID\{ObjectGuid}\ThreadingModel=Keduanya

  • <VSROOT>\CLSID\{PackageGuid}\CodeBase=context. CodeBase

Konstruktor

ProvideObjectAttribute(Type)

Konstruktor ini membuat objek baru ProvideObjectAttribute dengan jenis objek yang diberikan.

Properti

ObjectType

Properti ObjectType mengembalikan tipe objek yang diatur dalam konstruktor.

RegisterUsing

Pilih antara menentukan entri Codebase atau entri Assembly di registri. Ini dapat ditimpa selama pendaftaran

TypeId

Ambil alih properti TypeID untuk memungkinkan RegistrationAttribute memperoleh kelas untuk bekerja dengan System.ComponentModel.TypeDescriptor.GetAttributes(...). Atribut yang berasal dari atribut ini harus mengambil alih properti ini hanya jika membutuhkan kontrol yang lebih baik pada instans yang dapat diterapkan ke kelas.

(Diperoleh dari RegistrationAttribute)

Metode

GetPackageRegKeyPath(Guid)

Mendapatkan jalur registri (relatif terhadap akar registri aplikasi) dari VSPackage.

(Diperoleh dari RegistrationAttribute)
Register(RegistrationAttribute+RegistrationContext)

Menyediakan informasi pendaftaran tentang VSPackage saat dipanggil oleh alat pendaftaran eksternal seperti regpkg.exe. Untuk informasi selengkapnya, lihat Mendaftarkan VSPackages.

Unregister(RegistrationAttribute+RegistrationContext)

Membatalkan pendaftaran atribut ini.

Berlaku untuk