ฉันเพิ่มอินเทอร์เฟซการให้บริการของฉัน?

ระบุวัตถุที่คุณต้องการเพิ่มติดต่อ (โดยปกติข้อมูลแหล่ง rowset คำสั่ง หรือเซสชันวัตถุที่สร้างขึ้น โดยตัวช่วยสร้างให้บริการ ATL) เป็นไปได้ว่า วัตถุที่คุณต้องเพิ่มติดต่อไปเป็นที่ที่ผู้ให้บริการของคุณในขณะนี้สนับสนุน ในกรณีนี้ รันตัวช่วยสร้างการวัตถุ ATL เพื่อสร้างวัตถุ (การคลิกขวาในบานหน้าต่างพื้นที่ทำงานของโครงการ ClassView หน้าต่าง และเลือกวัตถุ ATL ใหม่)?

ถ้าคุณสร้างชั้นเพื่อสนับสนุนอินเทอร์เฟซใหม่ ทำให้วัตถุสืบทอดจากคลานั้น ตัวอย่างเช่น คุณอาจเพิ่มคลาIRowsetIndexImplวัตถุ rowset:

แม่แบบ lt คลาส Creator >
คลา CAgentRowset: สาธารณะ CRowsetImpl < CAgentRowset <Creator>, CAgentMan, Creator >
   สาธารณะ IRowsetIndexImpl < … & gt
 

เพิ่มอินเทอร์เฟซการCOM_MAPในวัตถุโดยใช้แมโคCOM_INTERFACE_ENTRY ถ้ามี ไม่มีแผนที่สร้างขึ้นใหม่ ตัวอย่างเช่น:

BEGIN_COM_MAP(CAgentRowset)
 nbsp   COM_INTERFACE_ENTRY(IRowsetIndex)
END_COM_MAP()(&N)

สำหรับวัตถุ rowset โซ่แผนที่ของแม่ของวัตถุเพื่อให้วัตถุสามารถมอบหมายเป็นคลาสหลัก ในตัวอย่างนี้ เพิ่มแมโคCOM_INTERFACE_ENTRY_CHAINลงในแผนที่:

BEGIN_COM_MAP(CAgentRowset)
 nbsp   COM_INTERFACE_ENTRY(IRowsetIndex)
     COM_INTERFACE_ENTRY_CHAIN(CRowsetImpl)
END_COM_MAP()(&N)

Index