Implementing a Dual Interface
Можно реализовать с помощью класса IDispatchImpl сдвоенный интерфейс, который предоставляет реализацию по умолчанию IDispatch двойном методов в интерфейсе. Дополнительные сведения см. в разделе Implementing the IDispatch Interface.
Использовать этот класс.
Укажите собственный сдвоенный интерфейс в библиотеке типов.
Создайте производный класс от специализации IDispatchImpl (передачи данных об интерфейсе и библиотеке типов как аргументы шаблонов).
Добавьте запись (или записи) к сопоставлению COM для предоставления сдвоенный интерфейс, через QueryInterface.
Реализуйте vtable часть интерфейса в классе.
Убедитесь, что библиотека типов, содержащие определения интерфейсов доступные объекты во время выполнения.
Мастер простых объектов ATL
Если нужно создать новый интерфейс и новый класс для реализации его можно использовать Библиотеки ATL добавляет диалоговое окно класса, а затем Мастер объекта простой библиотеки ATL.
Мастер реализации интерфейсов
Если имеется существующий интерфейс можно использовать Мастер реализации интерфейсов чтобы добавить необходимые записи базового класса, сопоставления и каркасные модели COM реализации метода к существующему классу.
Примечание
Можно обработать созданный базовым классом, поэтому основной и дополнительный номера версии библиотеки типов, передаются как аргументы шаблонов к базовому классу IDispatchImpl.Мастер реализации интерфейса не проверяет номер версии библиотеки типов.
Реализация интерфейса IDispatch
Можно использовать базовый класс, обеспечивающий реализацию IDispatchImpl только диспетчерский интерфейс, указав соответствующую запись в сопоставлении модели COM (использование макроса COM_INTERFACE_ENTRY2 или COM_INTERFACE_ENTRY_IID ), пока будет библиотеку типов, описывающую соответствующий сдвоенный интерфейс. Он скорее общий для реализации интерфейса IDispatch таким образом, например. Мастер объекта библиотеки ATL простой и мастера обе реализации интерфейса предположим, что необходимо реализовать предназначен IDispatch таким образом, поэтому они добавляют соответствующую запись для сопоставления.
Примечание
Библиотеки ATL предоставляет классы IDispEventImpl и IDispEventSimpleImpl чтобы помочь реализовать диспетчерских интерфейсов без использования библиотеки типов, содержащие определения, совместимой с двойного интерфейса.