ATL_PROPMAP_ENTRY is the same from atl71 through atl90. In atl100 and atl110 it looks like this:
struct ATL_PROPMAP_ENTRY { LPCOLESTR szDesc; const CLSID* pclsidPropPage; const IID* piidDispatch; void *rgclsidAllowed; DWORD cclsidAllowed; DISPID dispid; DWORD dwOffsetData; DWORD dwSizeData; VARTYPE vt; };
While the structure itself is undocumented, there are documented macros that create it:
http://msdn.microsoft.com/en-us/library/ee845406.aspx http://msdn.microsoft.com/en-us/library/ee845404.aspx
For the callback macros, the callback function is stored in rgclsidAllowed, and cclsidAllowed is 0. The only public mention of the callback signature I could find is in this article: http://msdn.microsoft.com/en-gb/vstudio/ee309358.aspx