# COMMAP Sample: Demonstrates COM Interface Map Entry Macros with Compiler COM Support

This basic sample shows how different COM interface map entry macros are used. This sample uses the smart pointer mechanism (_com_ptr_t) of Visual C++ native compiler COM support. The #import mechanism is used instead of the MIDL-generated .h and .c files to provide marshaling information.

Security Note
This sample code is provided to illustrate a concept and should not be used in applications or Web sites, as it may not illustrate the safest coding practices.

# Building and Running the Sample

Note
If you are running Visual C++ Express Edition, you might need to install the Platform SDK before running this sample. For information on how to do this, see How to: Use Visual C++ Express Edition with the Microsoft Platform SDK.

#### To build and run this sample

1. Open the solution commap.sln.

2. On the Build menu, click Build Solution.

3. Set ctlcomm as the startup project (right-click the project node and click Set as StartUp Project) and press F5.

4. Open Commap.htm in your Web browser. It includes comments about each type of map entry.

CTLCOMM is an MFC-wrapped Visual C++ compiler COM support controller of the COMMAP ATL server.

# Keywords

This sample demonstrates the following keywords:

dispinterface; #import; _com_ptr_t; _variant_t; _bstr_t; _com_error