COMEvents Sample: Demonstrates Creating and Using COM Events

The COMEvents sample demonstrates event handling using COM.

Security noteSecurity Note

This sample code is intended to illustrate a concept, and it shows only the code that is relevant to that concept. It may not meet the security requirements for a specific environment, and it should not be used exactly as shown. We recommend that you add security and error-handling code to make your projects more secure and robust. Microsoft provides this sample code "AS IS" with no warranties.

To get samples and instructions for installing them:

To access samples from Visual Studio

  • On the Help menu, click Samples.

    By default, these samples are installed in drive:\Program Files\Microsoft Visual Studio 10.0\Samples\.

  • For the most recent version of this sample and a list of other samples, see Visual Studio Samples on the MSDN Web site.

Building and Running the Sample

To build and run COMEvents

  1. Open the solution file COMEvents.sln.

  2. From the Build menu, click Build Solution.

  3. Right-click the EventReceiver node in Solution Explorer and select Set as Startup Project.

  4. From the Debug menu, click Start Without Debugging.

How the Sample Works

The COMEvents sample creates an event source CSource and an event receiver CSink using the event_source and event_receiver attributes, respectively.

The event source declares the methods in the interfaces IEvent, IEvent2, and IJW as events (see Ifaces.h for the interface definitions).

The event receiver declares handler methods f1 through f6, and hooks each of these handlers to an event.

The main code instantiates CSource and CSink. The CSink constructor performs the hooking. The main code then fires the events, unhooks the events, then fires the events again.

See Also

Other Resources

Event Handling Samples