IExtenderProviderUnk.GetExtender Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Returns an extender for the given object under the specified category.
public:
System::Object ^ GetExtender(System::String ^ ExtenderCATID, System::String ^ ExtenderName, System::Object ^ ExtendeeObject, EnvDTE::IExtenderSite ^ ExtenderSite, int Cookie);
public:
Platform::Object ^ GetExtender(Platform::String ^ ExtenderCATID, Platform::String ^ ExtenderName, Platform::Object ^ ExtendeeObject, EnvDTE::IExtenderSite ^ ExtenderSite, int Cookie);
winrt::Windows::Foundation::IInspectable GetExtender(std::wstring const & ExtenderCATID, std::wstring const & ExtenderName, winrt::Windows::Foundation::IInspectable const & ExtendeeObject, EnvDTE::IExtenderSite const & ExtenderSite, int Cookie);
[System.Runtime.InteropServices.DispId(1)]
public object GetExtender (string ExtenderCATID, string ExtenderName, object ExtendeeObject, EnvDTE.IExtenderSite ExtenderSite, int Cookie);
[<System.Runtime.InteropServices.DispId(1)>]
abstract member GetExtender : string * string * obj * EnvDTE.IExtenderSite * int -> obj
Public Function GetExtender (ExtenderCATID As String, ExtenderName As String, ExtendeeObject As Object, ExtenderSite As IExtenderSite, Cookie As Integer) As Object
Parameters
- ExtenderCATID
- String
The CATID for the extender being requested.
- ExtenderName
- String
The name for the extender being requested.
- ExtendeeObject
- Object
The extendee object.
- ExtenderSite
- IExtenderSite
The extender site, represented by an IExtenderSite interface.
- Cookie
- Int32
The cookie identifying the extender.
Returns
An extender.
- Attributes
Remarks
GetExtender returns the extender for the given CATID and name for the specified extendee instance. This method is called only if CanExtend returns true
.
The extender provider must keep ExtenderSite
object and Cookie
.
Warning
The extender manager maintains an internal cache of extender objects, and must be notified when they are being destroyed. You must call NotifyDelete immediately upon destroying extender objects. You must not wait for the application to become idle, because other Visual Studio components may try to access the destroyed extender object before you call the method. If this happens, Visual Studio may crash.
Note
The extendee object is passed as an IUnknown interface.