การใช้งาน CComObjectRootEx

CComObjectRootExมีความสำคัญ — วัตถุ ATL ทั้งหมดต้องมีอินสแตนซ์หนึ่งของCComObjectRootExหรือCComObjectRootในการสืบทอดของตน CComObjectRootExแสดงกลไกQueryInterfaceเริ่มต้นที่ยึดตามรายการของแผนที่ COM?

ดูแผนที่ของ COM อินเทอร์เฟซของวัตถุจะตากไปยังไคลเอนต์เมื่อไคลเอ็นต์แบบสอบถามสำหรับอินเทอร์เฟซ จะดำเนินการแบบสอบถามผ่านทางCComObjectRootEx::InternalQueryInterface InternalQueryInterfaceจัดการการอินเทอร์เฟซในตารางผัง COM เท่านั้น?

คุณสามารถป้อนอินเทอร์เฟซการลงในตารางผัง COM กับแมโคCOM_INTERFACE_ENTRYหรืออย่างใดอย่างหนึ่งของตัวแปร ตัวอย่าง โค้ดต่อไปนี้จากการ BEEPERอย่างอินเทอร์เฟซIDispatch, IBeeperและISupportErrorInfoที่ป้อนลงในตารางผัง COM

BEGIN_COM_MAP(CBeeper)
 nbsp COM_INTERFACE_ENTRY(IDispatch)
   COM_INTERFACE_ENTRY(IBeeper)
   COM_INTERFACE_ENTRY_TEAR_OFF (IID_ISupportErrorInfo, CBeeper2)
END_COM_MAP ()(&N)

Index