We recommend using Visual Studio 2017



The latest version of this topic can be found at appobject.

Identifies the coclass as an application object, which is associated with a full .exe application, and indicates that the functions and properties of the coclass are globally available in this type library.


The appobject C++ attribute has the same functionality as the appobject MIDL attribute.

The following code shows a simple class definition preceded by an attribute block that includes appobject:

// cpp_attr_ref_appobject.cpp  
// compile with: /LD  
#include <windows.h>  
[module(name="MyLib", uuid="f1ce17f0-a5df-4d26-95f6-0a122197ac5b")];  
[object, uuid="905de6db-7a12-45ab-9f8b-b39f5112f010"]  
__interface ICustom {};  
[coclass, appobject,uuid="00395340-745f-4b69-bd58-e2921452b9fc"]  
class A : public ICustom {  
   int i;  

Attribute Context

Applies toclass, struct
Required attributescoclass
Invalid attributesNone

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

IDL Attributes
Class Attributes
Typedef, Enum, Union, and Struct Attributes
Attributes Samples