Be familiar with the structure and syntax of an .idl file to be able to modify it.

Rely on a wizard, which would let you modify some aspects of the .idl file.

Now, you can modify the .idl file from within a source code file using Visual C++ IDL attributes. In many cases, Visual C++ IDL attributes have the same name as MIDL attributes. When the name of a Visual C++ IDL attribute and a MIDL attribute are the same, it means that putting the Visual C++ attribute in your source code file will result in an .idl file that contains its namesake MIDL attribute. However, a Visual C++ IDL attribute may not provide all the functionality of a MIDL attribute.

When not used with COM attributes, IDL attributes let you define interfaces and when compiled, are used to define the generated .idl file. When used with COM attributes in an ATL project, some IDL attributes, such as coclass, cause code to be injected into our project.

Note that idl_quote lets you use MIDL constructs that are not supported in the current version of Visual C++. This and other attributes such as importlib and includelib help you to use existing .idl files in your current Visual C++ project.

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.