nonextensible Attribute


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on

The latest version of this topic can be found at nonextensible Attribute.

If a dual interface will not be extended at run time (that is, you won't provide methods or properties via IDispatch::Invoke that are not available via the vtable), you should apply the nonextensible attribute to your interface definition. This attribute provides information to client languages (such as Visual Basic) that can be used to enable full code verification at compile time. If this attribute is not supplied, bugs may remain hidden in the client code until run time.

For more information on the nonextensible attribute and an example, see nonextensible.

Dual Interfaces and ATL