ProvideObjectAttribute クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
VSPackage がインターフェイスから作成できるオブジェクトを提供することを Visual Studio に ILocalRegistry通知します。 このクラスは継承できません。
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
- 継承
- 属性
例
クラスの実装は、 ProvideObjectAttribute マネージド サンプルで確認できます。 この属性と自動登録に使用されるその他すべての属性の Microsoft.VisualStudio.Package 標準の場所は、サンプルで使用される言語に応じて、VsPkg.cs、VsPkg.vb、またはVsPkg.cppの クラスの実装に隣接しています。
注釈
呼び出すタイミング
ProvideObjectAttributeインターフェイスから作成できるオブジェクトを提供する場合は、 属性Microsoft.VisualStudio.Packageを派生クラスにILocalRegistry適用します。
基本的な使用方法
クラスは ProvideObjectAttribute 、インターフェイスから作成できるオブジェクトを提供することを Visual Studio に ILocalRegistry通知します。 レジストリの HKEY_CLASSES_ROOT\CLSID セクションでオブジェクトをグローバルに登録するのではなく、常にこの属性を使用します。 派生 ProvideObjectAttributeクラス、または を Microsoft.VisualStudio.Package実装するクラスを変更するには、 を使用します IVsPackage。
この属性クラスは、regpkg.exe などの外部登録ツールのデータを提供するためにのみ使用されます。 VSPackage の実行時の動作には影響しません。 詳細については、「 VSPackage の登録」を参照してください。
注意
C# では、"Attribute" という単語が属性クラスの名前に自動的に追加されます。 C# コードでは、この属性を として ProvideObject
参照します。
レジストリ エントリ
クラスによって ProvideObjectAttribute 次のレジストリ エントリが作成されます。
<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=Both
<VSROOT>\CLSID\{PackageGuid}\CodeBase=context。コードベース
コンストラクター
ProvideObjectAttribute(Type) |
このコンストラクターは、指定されたオブジェクト型を持つ新しい ProvideObjectAttribute オブジェクトを作成します。 |
プロパティ
ObjectType |
ObjectType プロパティは、コンストラクターで設定されたオブジェクト型を返します。 |
RegisterUsing |
レジストリで Codebase エントリまたは Assembly エントリを指定するかを選択します。 これは登録時にオーバーライドできます |
TypeId |
RegistrationAttribute 派生クラスが System.ComponentModel.TypeDescriptor.GetAttributes(...) と連携できるように、TypeID プロパティをオーバーライドします。このプロパティから派生した属性は、クラスに適用できるインスタンスをより適切に制御する必要がある場合にのみ、このプロパティをオーバーライドする必要があります。 (継承元 RegistrationAttribute) |
メソッド
GetPackageRegKeyPath(Guid) |
VSPackage のレジストリ パス (アプリケーションのレジストリ ルートに対する相対パス) を取得します。 (継承元 RegistrationAttribute) |
Register(RegistrationAttribute+RegistrationContext) |
regpkg.exe などの外部登録ツールによって呼び出されたときに VSPackage に関する登録情報を提供します。 詳細については、「VSPackage の登録」を参照してください。 |
Unregister(RegistrationAttribute+RegistrationContext) |
この属性の登録を解除します。 |