requires_category

Specifies the required component categories of the target class.

[ requires_category(  
   requires_category 
 ) ]

Parameters

  • requires_category
    The ID of the required category.

Remarks

The requires_category C++ attribute specifies the component categories required by the target class. For more information, see REQUIRED_CATEGORY.

This attribute requires that the coclass, progid, or vi_progid attribute (or another attribute that implies one of these) also be applied to the same element.

Example

The following code requires that the object implement the Control category.

// cpp_attr_ref_requires_category.cpp
// compile with: /LD
#define _ATL_ATTRIBUTES
#include "atlbase.h"
#include "atlcom.h"

[module (name="MyLibrary")];

[ coclass, requires_category("CATID_Control"),
  uuid("1e1a2436-f3ea-4ff3-80bf-5409370e8144")]
class CMyClass {};

Requirements

Attribute Context

Applies to

class, struct

Repeatable

No

Required attributes

One or more of the following: coclass, progid, or vi_progid.

Invalid attributes

None

For more information about the attribute contexts, see Attribute Contexts.

See Also

Reference

implements_category

Other Resources

COM Attributes

ATL Samples