Bagikan melalui


Mendaftar dan membatalkan pendaftaran VSPackages

Anda menggunakan atribut untuk mendaftarkan VSPackage, tetapi

Mendaftarkan VSPackage

Anda dapat menggunakan atribut untuk mengontrol pendaftaran VSPackage terkelola. Semua informasi pendaftaran terkandung dalam file .pkgdef . Untuk informasi selengkapnya tentang pendaftaran berbasis file, lihat Utilitas CreatePkgDef.

Kode berikut menunjukkan cara menggunakan atribut pendaftaran standar untuk mendaftarkan VSPackage Anda.

[PackageRegistration(UseManagedResourcesOnly = true)]
[Guid("0B81D86C-0A85-4f30-9B26-DD2616447F95")]
public sealed class BasicPackage : Package
{
    // ...
}

Membatalkan pendaftaran ekstensi

Jika Anda telah bereksperimen dengan banyak VSPackage yang berbeda dan ingin menghapusnya dari instans eksperimental, Anda cukup menjalankan perintah Reset . Cari Reset Instans Eksperimental Visual Studio di halaman awal komputer Anda, atau jalankan perintah ini dari baris perintah:

<location of Visual Studio 2015 install>\"Microsoft Visual Studio 14.0\VSSDK\VisualStudioIntegration\Tools\Bin\CreateExpInstance.exe" /Reset /VSInstance=14.0 /RootSuffix=Exp

Jika Anda ingin menghapus instalan ekstensi yang telah Diinstal pada instans pengembangan Visual Studio, buka Ekstensi dan Pembaruan Alat>, temukan ekstensi, dan klik Hapus instalan.

Jika karena alasan tertentu tidak ada metode ini yang berhasil menghapus instalan ekstensi, Anda dapat membatalkan pendaftaran rakitan VSPackage dari baris perintah sebagai berikut:

<location of Visual Studio 2015 install>\"Microsoft Visual Studio 14.0\VSSDK\VisualStudioIntegration\Tools\Bin\regpkg" /unregister <pathToVSPackage assembly>

Menggunakan atribut pendaftaran kustom untuk mendaftarkan ekstensi

Dalam kasus tertentu, Anda mungkin perlu membuat atribut pendaftaran baru untuk ekstensi Anda. Anda dapat menggunakan atribut pendaftaran untuk menambahkan kunci registri baru atau untuk menambahkan nilai baru ke kunci yang ada. Atribut baru harus berasal dari RegistrationAttribute, dan harus mengambil alih Register metode dan Unregister .

Membuat atribut kustom

Kode berikut menunjukkan cara membuat atribut pendaftaran baru.

[AttributeUsage(AttributeTargets.Class, Inherited = true, AllowMultiple = false)]
public class CustomRegistrationAttribute : RegistrationAttribute
{
}

AttributeUsageAttribute digunakan pada kelas atribut untuk menentukan elemen program (kelas, metode, dll.) yang berkaitan dengan atribut, apakah dapat digunakan lebih dari sekali, dan apakah itu dapat diwariskan.

Membuat kunci registri

Dalam kode berikut, atribut kustom membuat subkunci Kustom di bawah kunci untuk VSPackage yang sedang didaftarkan.

public override void Register(RegistrationAttribute.RegistrationContext context)
{
    Key packageKey = null;
    try
    {
        packageKey = context.CreateKey(@"Packages\{" + context.ComponentType.GUID + @"}\Custom");
        packageKey.SetValue("NewCustom", 1);
    }
    finally
    {
        if (packageKey != null)
            packageKey.Close();
    }
}

public override void Unregister(RegistrationContext context)
{
    context.RemoveKey(@"Packages\" + context.ComponentType.GUID + @"}\Custom");
}

Membuat nilai baru di bawah kunci registri yang sudah ada

Anda dapat menambahkan nilai kustom ke kunci yang sudah ada. Kode berikut menunjukkan cara menambahkan nilai baru ke kunci pendaftaran VSPackage.

public override void Register(RegistrationAttribute.RegistrationContext context)
{
    Key packageKey = null;
    try
    {
        packageKey = context.CreateKey(@"Packages\{" + context.ComponentType.GUID + "}");
        packageKey.SetValue("NewCustom", 1);
    }
    finally
    {
        if (packageKey != null)
            packageKey.Close();
    }
}

public override void Unregister(RegistrationContext context)
{
    context.RemoveValue(@"Packages\" + context.ComponentType.GUID, "NewCustom");
}