Displaying System Interfaces in ClassView

CodeGuru content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.

The VC++ ClassView pane of the project window displays a view of your
project classes. If your project is an ATL project, then ClassView will also
display your interfaces that a class supports when the class node is opened in
ClassView. ClassView scans your class header file for COM_INTERFACE_ENTRY
macros to determine what interfaces a class supports. By default, only
interfaces that appear in your IDL file are displayed in the ClassView.


You can extend this feature to include any system interfaces that you
implement in your class, such as IStorage, IStream etc. This can
be acieved in two simple steps:


  1. Ensure that your class declaration includes COM_INTERFACE_ENTRY macros
    for the system interfaces you implement (it should do already)

  2. Open the system IDL file (in the main Include directory of your VC++
    installation) that contains the interface you want ClassView to recognise and
    include it in your project

All system interfaces that are defined all IDL files that are included in
your project will appear in the ClassView window.

NOTE: By default, adding an IDL file to your project excludes it from
the project build so this method does not affect the build of your project in
any way

More by Author

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Must Read