Клиенты службы автоматизации: использование библиотек типов

Замечание

Библиотека классов Microsoft Foundation (MFC) продолжает поддерживаться. Однако мы больше не добавляем функции или обновляем документацию.

Клиенты службы автоматизации должны иметь сведения о свойствах и методах объектов сервера, если клиенты должны управлять объектами серверов. Свойства имеют типы данных; методы часто возвращают значения и принимают параметры. Клиенту требуются сведения о типах данных всех этих типов, чтобы статически привязаться к типу объекта сервера.

Эти сведения о типе можно передать несколькими вариантами. Рекомендуется создать библиотеку типов.

Дополнительные сведения о MkTypLib см. в пакете SDK для Windows.

Visual Studio может считывать файл библиотеки типов и создавать класс диспетчера, производный от COleDispatchDriver. Объект этого класса имеет свойства и операции, дублирующие свойства и операции серверного объекта. Ваше приложение вызывает свойства и операции этого объекта, а функции, унаследованные от COleDispatchDriver, перенаправляют эти вызовы в систему OLE, которая, в свою очередь, отправляет их серверному объекту.

Visual Studio автоматически сохраняет этот файл библиотеки типов, если вы решили включить автоматизацию при создании проекта. В рамках каждой сборки TLB-файл будет создан с помощью MkTypLib.

Создать класс диспетчера из файла библиотеки типов (.tlb)

  1. В представлении классов или обозревателе решений щелкните проект правой кнопкой мыши и выберите команду "Добавить класс" в контекстном меню.

  2. В диалоговом окне "Добавить класс" выберите папку Visual C++/MFC в левой области. Щелкните значок класса MFC из TypeLib в правой области и нажмите кнопку "Открыть".

  3. В диалоговом окне «Добавление класса из Typelib» выберите библиотеку типов из раскрывающегося списка «Доступные библиотеки типов». В поле "Интерфейсы" отображаются интерфейсы, доступные для выбранной библиотеки типов.

    Замечание

    Интерфейсы можно выбрать из нескольких библиотек типов.

    Чтобы выбрать интерфейсы, дважды щелкните их или нажмите кнопку "Добавить ". Когда вы это сделаете, имена классов диспетчеризации будут отображаться в поле «Созданные классы». Имена классов можно изменить в Class поле.

    В поле "Файл" отображается файл, в котором будет объявлен класс. (вы также можете изменить это имя файла. Вы также можете использовать кнопку выбора файлов, чтобы выбрать другие файлы, если вы предпочитаете, чтобы сведения о заголовке и реализации были записаны в существующих файлах или в другом каталоге, а не в каталоге проекта.

    Замечание

    Все классы отправки для выбранных интерфейсов будут помещены в файл, указанный здесь. Если вы хотите, чтобы интерфейсы объявлялись в отдельных заголовках, необходимо запустить этот мастер для каждого файла заголовка, который требуется создать.

    Замечание

    Некоторые сведения о библиотеке типов могут храниться в файлах с расширениями .DLL, .OCX или .OLB.

  4. Нажмите кнопку Готово.

    Затем мастер создаст код для классов диспетчера, используя указанные имена классов и файлов.

См. также

Клиенты службы автоматизации