Share via


FlavoredProjectBase.GetComInterface<Interface_T> Method

A project derived from this base class will be aggregated with a native COM component (the ProjectAggregator object) that can also aggregate an inner project in case of flavoring.

Namespace:  Microsoft.VisualStudio.Shell.Flavor
Assembly:  Microsoft.VisualStudio.Shell.10.0 (in Microsoft.VisualStudio.Shell.10.0.dll)

Syntax

'Declaration
Public Function GetComInterface(Of Interface_T As Class) As Interface_T
public Interface_T GetComInterface<Interface_T>()
where Interface_T : class
public:
generic<typename Interface_T>
where Interface_T : ref class
Interface_T GetComInterface()
member GetComInterface : unit -> 'Interface_T  when 'Interface_T : not struct
JScript does not support generic types or methods.

Type Parameters

  • Interface_T

Return Value

Type: Interface_T

Remarks

All the requests for interfaces exposed to COM must be handled by the external object that has a special implementation of QueryInterface that handles both inner and outer projects.

If you don’t use this helper method when requesting an interface you can get unexpected InvalidCast exceptions.

If you want to get the implementation of an interface implemented by your FlavoredProjectBase-derived object, then you must use the standard cast operator.

.NET Framework Security

See Also

Reference

FlavoredProjectBase Class

Microsoft.VisualStudio.Shell.Flavor Namespace