requires_category

Specifies the required component categories of the target class.

Syntax

[ 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 Value
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

COM Attributes
implements_category