Each framework class that can receive messages or commands has its own "message map." The framework uses message maps to connect messages and commands to their handler functions. Any class derived from class
CCmdTarget can have a message map. Other articles explain message maps in detail and describe how to use them.
In spite of the name "message map," message maps handle both messages and commands — all three categories of messages listed in Message Categories.