Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылочная ссылка менеджера компонентов платформы CoreServices

Опции
Развертывание Target:

На этой странице
Язык:

Ссылка менеджера компонентов

Можно использовать Менеджер компонентов, чтобы позволить приложению находить и использовать различные программные объекты (компоненты) во время выполнения. Можно создать собственные компоненты, и можно использовать Менеджер компонентов, чтобы помочь управлять компонентами. Компонент является частью кода, обеспечивающего определенный набор служб одному или более клиентам. Приложения, системные расширения, а также другие компоненты могут использовать службы компонента. Компонент обычно обеспечивает определенный тип службы его клиентам. Например, компонент мог бы обеспечить сжатие изображений или отобразить возможности распаковки; приложение могло вызвать такой компонент, обеспечив изображение для сжатия, и компонент мог выполнить желаемую работу и возвратить сжатое изображение приложению. Менеджер компонентов обеспечивает доступ к компонентам и управляет ими, например, отслеживание в настоящее время доступных компонентов и запросов маршрутизации к надлежащему компоненту.

Функции

  • Возвращает число зарегистрированных компонентов, встречающих критерии выбора, указанные Вашим приложением.

    Объявление

    Objective C

    long CountComponents ( ComponentDescription *looking );

    Параметры

    looking

    Указатель на a ComponentDescription структура. Ваше приложение указывает критерии поиска компонента в полях этой структуры.

    Менеджер компонентов игнорирует поля в структуре описания компонента, установленные в 0. Например, при установке всех полей в 0 Менеджер компонентов возвращает число компонентов, зарегистрированных в системе. Точно так же, если Вы устанавливаете все поля в 0 за исключением componentManufacturer поле, Менеджер компонентов возвращает число зарегистрированных компонентов, предоставленных производителем, которого Вы указываете.

    Возвращаемое значение

    Число компонентов, удовлетворяющих указанные критерии поиска.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Возвращает идентификатор компонента для следующего зарегистрированного компонента, встречающего критерии выбора, указанные Вашим приложением.

    Объявление

    Objective C

    Component FindNextComponent ( Component aComponent, ComponentDescription *looking );

    Параметры

    aComponent

    Начальная точка для поиска. Установите это поле в 0 для запуска поиска в начале списка компонента. При продолжении поиска можно указать идентификатор компонента, ранее возвращенный этой функцией. Функция тогда ищет остающиеся компоненты.

    looking

    Указатель на a ComponentDescription структура. Ваше приложение указывает критерии поиска компонента в полях этой структуры.

    Менеджер компонентов игнорирует поля в структуре описания компонента, установленные в 0. Например, при установке всех полей в 0 все компоненты удовлетворяют критерии поиска. В этом случае Ваше приложение может получить информацию обо всех компонентах, регистрирующихся в системе путем повторного вызова FindNextComponent и GetComponentInfo пока поиск не завершен. Точно так же, если Вы устанавливаете все поля в 0 за исключением componentManufacturer поле, Менеджер компонентов ищет все зарегистрированные компоненты компонент, предоставленный производителем, которого Вы указываете. Обратите внимание на то, что эта функция не изменяет содержание структуры описания компонента, которую Вы предоставляете. Для получения подробной информации о компоненте необходимо использовать GetComponentInfo функция для получения структуры описания компонента для каждого возвращенного компонента.

    Возвращаемое значение

    Идентификатор компонента компонента, удовлетворяющего критерии поиска или 0, когда больше нет соответствующих компонентов. Ваше приложение может использовать идентификатор компонента, возвращенный этой функцией для получения большей информации о компоненте, с помощью GetComponentInfo, или открыть компонент, с помощью любого OpenDefaultComponent функционируйте или OpenComponent функция. См. описание Component тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Позволяет Вашему приложению определять, изменился ли список зарегистрированных компонентов.

    Объявление

    Objective C

    SInt32 GetComponentListModSeed ( void );

    Параметры

    Возвращаемое значение

    Регистрация компонента отбирает число. Каждый раз, когда Менеджер компонентов регистрирует или не регистрирует компонент, он генерирует новое, уникальное число семени. Путем сравнения возвращаемого значения со значениями, ранее возвращенными этой функцией, можно определить, изменился ли список. Ваше приложение может использовать эту информацию, чтобы восстановить ее внутренние списки компонента или инициировать другое действие, которое необходимо каждый раз, когда новые компоненты доступны.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    SInt32 GetComponentTypeModSeed ( OSType componentType );

    Параметры

    componentType

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    Component ResolveComponentAlias ( Component aComponent );

    Параметры

    aComponent

    Возвращаемое значение

    См. описание Component тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    OSErr OpenAComponent ( Component aComponent, ComponentInstance *ci );

    Параметры

    aComponent
    ci

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    OSErr OpenADefaultComponent ( OSType componentType, OSType componentSubType, ComponentInstance *ci );

    Параметры

    componentType
    componentSubType
    ci

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Открывает соединение с компонентом с идентификатором компонента, указанным Вашим приложением.

    Объявление

    Objective C

    ComponentInstance OpenComponent ( Component aComponent );

    Параметры

    aComponent

    Компонент Вы хотите открыться. Ваше приложение получает этот идентификатор из FindNextComponent функция. Если Ваше приложение регистрирует компонент, оно может также получить идентификатор компонента из RegisterComponent функционируйте или RegisterComponentResource функция.

    Возвращаемое значение

    Экземпляр компонента, идентифицирующий соединение Вашего приложения с компонентом. Необходимо предоставить этот экземпляр компонента каждый раз, когда Вы вызываете функции, предоставленные компонентом. При закрытии компонента необходимо также предоставить этот экземпляр компонента к CloseComponent функция.

    Если это не может открыть указанный компонент, функциональные возвраты NULL.

    См. описание ComponentInstance тип данных.

    Обсуждение

    Ваше приложение должно открыть компонент, прежде чем оно сможет вызвать любые функции компонента. Для использования этой функции Вы, должно быть, уже получили идентификатор компонента. Также можно использовать OpenDefaultComponent функционируйте для открытия компонента без вызова FindNextComponent.

    Обратите внимание на то, что Ваше приложение может поддержать несколько соединений с единственным компонентом, или оно может иметь соединения с несколькими компонентами одновременно.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Открывает соединение с зарегистрированным компонентом типа компонента и подтипа, указанного Вашим приложением.

    Объявление

    Objective C

    ComponentInstance OpenDefaultComponent ( OSType componentType, OSType componentSubType );

    Параметры

    componentType

    Тип компонента. Все компоненты определенного типа поддерживают единый набор функций интерфейса. Используйте этот параметр для поиска компонентов данного типа.

    componentSubType

    Подтип компонента. Различные подтипы типа компонента могут поддерживать дополнительные функции или обеспечить интерфейсы, расширяющиеся вне стандартных функций для данного типа компонента. Например, подтип компонента компрессора изображения указывает алгоритм сжатия, используемый компрессором.

    Ваше приложение может использовать componentSubType параметр для выполнения более определенной работы поиска, чем является возможным использованием только componentType параметр. Например, можно хотеть, чтобы приложение использовало только компоненты определенного типа компонента ('draw') это также имеет определенный подтип ('oval'). Установите этот параметр на 0 для выбора компонента с любым значением подтипа.

    Возвращаемое значение

    Экземпляр компонента, идентифицирующий соединение, открытое компоненту, соответствующему Ваши критерии поиска. Необходимо предоставить этот экземпляр компонента каждый раз, когда Вы вызываете функции, предоставленные компонентом. При закрытии компонента необходимо также предоставить этот экземпляр компонента к CloseComponent функция.

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

    См. описание ComponentInstance тип данных.

    Обсуждение

    Ваше приложение должно открыть компонент, прежде чем оно сможет вызвать любые функции компонента. Эта функция ищет компонент типом и подтипом. Вы не должны предоставлять структуру описания компонента или вызывать FindNextComponent функционируйте для использования этой функции. Если Вы хотите осуществить больше контроля над процессом выбора, можно использовать FindNextComponent и OpenComponent функции.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Завершает соединение Вашего приложения с компонентом.

    Объявление

    Objective C

    OSErr CloseComponent ( ComponentInstance aComponentInstance );

    Параметры

    aComponentInstance

    Соединение Вы хотите закрыться. Ваше приложение получает экземпляр компонента из OpenComponent функционируйте или OpenDefaultComponent функция. Можно использовать идентификатор компонента здесь, но необходимо принудить тип данных соответственно.

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Обсуждение

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

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Позволяет Вашему приложению определять, поддерживает ли компонент указанный запрос.

    Объявление

    Objective C

    ComponentResult ComponentFunctionImplemented ( ComponentInstance ci, SInt16 ftnNumber );

    Параметры

    ci

    Экземпляру компонента которого Вы хотите выполнить запрос. Ваше приложение получает экземпляр компонента из OpenDefaultComponent функционируйте или OpenComponent функция. Можно использовать идентификатор компонента здесь, но необходимо принудить тип данных соответственно.

    ftnNumber

    Значение кода запроса. См. документацию, предоставленную компонентом для значений кодов запроса.

    Возвращаемое значение

    Указывает, поддерживает ли компонент указанный запрос. Можно интерпретировать это число, как будто это было булево значение. Если возвращенное значение TRUE, компонент поддерживает указанный запрос. Если возвращенное значение FALSE, компонент не поддерживает запрос. Ваше приложение может использовать эту функцию для определения возможностей компонента.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.5.

    Не доступный 64-разрядным приложениям.

  • Возвращает дескриптор комплекту значка компонента к Вашему приложению.

    Объявление

    Objective C

    OSErr GetComponentIconSuite ( Component aComponent, Handle *iconSuite );

    Параметры

    aComponent

    Компонент, комплект значка которого Вы хотите получить. Ваше приложение получает идентификатор компонента из FindNextComponent функция. Если Ваше приложение регистрирует компонент, оно может также получить идентификатор компонента из RegisterComponent или RegisterComponentResource функция. Можно использовать экземпляр компонента здесь, но необходимо принудить тип данных соответственно.

    iconSuite

    По возврату, указателю на дескриптор для комплекта значка компонента или, если компонент не обеспечил комплект значка, NULL. Компонент обеспечивает ресурс ID его семьи значка к Менеджеру компонентов в дополнительных расширениях ресурса компонента. Ваше приложение ответственно за избавление от возвращенного дескриптора комплекта значка.

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

    Не доступный 64-разрядным приложениям.

  • Возвраты к Вашему приложению информация о регистрации для компонента.

    Объявление

    Objective C

    OSErr GetComponentInfo ( Component aComponent, ComponentDescription *cd, Handle componentName, Handle componentInfo, Handle componentIcon );

    Параметры

    aComponent

    Компонент, о котором Вы хотите получить информацию. Ваше приложение получает идентификатор компонента из FindNextComponent функция. Если Ваше приложение регистрирует компонент, оно может также получить идентификатор компонента из RegisterComponent или RegisterComponentResource функция.

    Можно предоставить экземпляр компонента, а не идентификатор компонента к этой функции, но необходимо принудить тип данных соответственно. Ваше приложение может получить экземпляр компонента из OpenComponent или OpenDefaultComponent функции.

    cd

    Указатель на a ComponentDescription структура. Функция возвращает информацию об указанном компоненте в этой структуре.

    componentName

    По возврату, дескриптору к имени компонента. Если компонент не имеет имени, пустого дескриптора. Установите это поле в NULL если Вы не хотите получать имя компонента.

    componentInfo

    По возврату, дескриптору к информационной строке компонента. Если компонент не имеет информационной строки, пустого дескриптора. Установите это поле в NULL если Вы не хотите получать информационную строку компонента.

    componentIcon

    По возврату, дескриптору к значку компонента. Если компонент не имеет значка, пустого дескриптора. Установите это поле в NULL если Вы не хотите получать значок компонента. Получить дескриптор к комплекту значка компонента, если это обеспечивает один, использование GetComponentIconSuite функция.

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Обсуждение

    Для получения информации о регистрирующихся компонентах см. “Регистрирующиеся Компоненты”.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Возвращает номер версии компонента к Вашему приложению.

    Объявление

    Objective C

    ComponentResult GetComponentVersion ( ComponentInstance ci );

    Параметры

    ci

    Экземпляр компонента, от которого Вы хотите получить информацию о версии. Ваше приложение получает экземпляр компонента из OpenDefaultComponent функционируйте или OpenComponent функция.

    Возвращаемое значение

    Номер версии компонента Вы указываете. Старший разряд 16 битов представляют основную версию и младший разряд 16 битов, представляет вспомогательную версию. Основная версия указывает, что спецификация компонента выравнивается, вспомогательная версия указывает номер версии определенной реализации.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.5.

    Не доступный 64-разрядным приложениям.

  • Объявление

    Objective C

    OSErr GetComponentPublicIndString ( Component aComponent, Str255 theString, SInt16 strListID, SInt16 index );

    Параметры

    aComponent
    theString

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    OSErr GetComponentPublicResource ( Component aComponent, OSType resourceType, SInt16 resourceID, Handle *theResource );

    Параметры

    aComponent
    resourceType
    theResource

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    OSErr GetComponentPublicResourceList ( OSType resourceType, SInt16 resourceID, SInt32 flags, ComponentDescription *cd, GetMissingComponentResourceUPP missingProc, void *refCon, void *atomContainerPtr );

    Параметры

    resourceType
    cd
    missingProc

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Возвраты к Вашему приложению последняя ошибка, сгенерированная определенным соединением с компонентом.

    Объявление

    Objective C

    OSErr GetComponentInstanceError ( ComponentInstance aComponentInstance );

    Параметры

    aComponentInstance

    Экземпляр компонента, от которого Вы хотите информацию об ошибке. Ваше приложение получает экземпляр компонента из OpenDefaultComponent функционируйте или OpenComponent функция. Можно использовать идентификатор компонента здесь, но необходимо принудить тип данных соответственно.

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Обсуждение

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

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

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    ComponentResult CallComponentOpen ( ComponentInstance ci, ComponentInstance self );

    Параметры

    ci
    self

    Возвращаемое значение

    См. описание ComponentResult тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    ComponentResult CallComponentClose ( ComponentInstance ci, ComponentInstance self );

    Параметры

    ci
    self

    Возвращаемое значение

    См. описание ComponentResult тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    ComponentResult CallComponentCanDo ( ComponentInstance ci, SInt16 ftnNumber );

    Параметры

    ci

    Возвращаемое значение

    См. описание ComponentResult тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    ComponentResult CallComponentVersion ( ComponentInstance ci );

    Параметры

    ci

    Возвращаемое значение

    См. описание ComponentResult тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    ComponentResult CallComponentRegister ( ComponentInstance ci );

    Параметры

    ci

    Возвращаемое значение

    См. описание ComponentResult тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    ComponentResult CallComponentTarget ( ComponentInstance ci, ComponentInstance target );

    Параметры

    ci
    target

    Возвращаемое значение

    См. описание ComponentResult тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    ComponentResult CallComponentUnregister ( ComponentInstance ci );

    Параметры

    ci

    Возвращаемое значение

    См. описание ComponentResult тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    ComponentResult CallComponentDispatch ( ComponentParameters *cp );

    Параметры

    cp

    Возвращаемое значение

    См. описание ComponentResult тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    ComponentResult CallComponentGetMPWorkFunction ( ComponentInstance ci, ComponentMPWorkFunctionUPP *workFunction, void **refCon );

    Параметры

    ci
    workFunction

    Возвращаемое значение

    См. описание ComponentResult тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    ComponentResult CallComponentGetPublicResource ( ComponentInstance ci, OSType resourceType, SInt16 resourceID, Handle *resource );

    Параметры

    ci
    resourceType
    resource

    Возвращаемое значение

    См. описание ComponentResult тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Наборы, позволяется ли использование небезопасных потоком компонентов в текущем потоке.

    Объявление

    Objective C

    void CSSetComponentsThreadMode ( CSComponentsThreadMode mode );

    Параметры

    mode

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

    Обсуждение

    Core Services поддерживает флаг режима потока компонента для каждого потока в текущем процессе. Значение по умолчанию этого флага kCSAcceptAllComponentsMode, что означает, что поток может вызвать любой компонент независимо от того, ориентирован ли компонент на многопотоковое исполнение. Приложения и другой высокоуровневый код, вызывающие компонентно-ориентированный APIs (такой как QuickTime) от приоритетных потоков, должны вызвать эту функцию от своего потока заранее и передачи в значении kCSAcceptThreadSafeComponentsOnlyMode.

    Флаг режима потока потока компонента может безопасно сохранить свое значение по умолчанию, только если поток является основным потоком или если это участвует в совместной блокировке, такой как потоки кооператива стиля менеджера Потока Углерода и потоки приложения, выполняющие их собственную частную блокировку.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.3 и позже.

    Осуждаемый в OS X v10.8.

  • Указывает, позволяется ли использование небезопасных потоком компонентов в текущем потоке.

    Объявление

    Objective C

    CSComponentsThreadMode CSGetComponentsThreadMode ( void );

    Возвращаемое значение

    Флаг, указывающий, позволяется ли использование небезопасных потоком компонентов в текущем потоке.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.3 и позже.

    Осуждаемый в OS X v10.8.

  • Создает новый универсальный указатель процедуры (UPP) к стандартной функции обратного вызова компонента.

    Объявление

    Objective C

    ComponentRoutineUPP NewComponentRoutineUPP ( ComponentRoutineProcPtr userRoutine );

    Параметры

    userRoutine

    Возвращаемое значение

    См. описание ComponentRoutineUPP тип данных.

    Обсуждение

    Посмотрите ComponentRoutineProcPtr обратный вызов для получения дополнительной информации.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Вызывает Вашу стандартную функцию обратного вызова компонента

    Объявление

    Objective C

    ComponentResult InvokeComponentRoutineUPP ( ComponentParameters *cp, Handle componentStorage, ComponentRoutineUPP userUPP );

    Параметры

    cp
    componentStorage
    userUPP

    Возвращаемое значение

    См. описание ComponentResult тип данных.

    Обсуждение

    Посмотрите ComponentRoutineProcPtr обратный вызов для получения дополнительной информации.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Избавляется от универсального указателя процедуры (UPP) к стандартной функции обратного вызова компонента.

    Объявление

    Objective C

    void DisposeComponentRoutineUPP ( ComponentRoutineUPP userUPP );

    Параметры

    userUPP

    Обсуждение

    Посмотрите ComponentRoutineProcPtr обратный вызов для получения дополнительной информации.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    ComponentFunctionUPP NewComponentFunctionUPP ( ProcPtr userRoutine, ProcInfoType procInfo );

    Параметры

    procInfo

    Возвращаемое значение

    См. описание ComponentFunctionUPP тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    void DisposeComponentFunctionUPP ( ComponentFunctionUPP userUPP );

    Параметры

    userUPP

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    ComponentMPWorkFunctionUPP NewComponentMPWorkFunctionUPP ( ComponentMPWorkFunctionProcPtr userRoutine );

    Параметры

    userRoutine

    Возвращаемое значение

    См. описание ComponentMPWorkFunctionUPP тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    ComponentResult InvokeComponentMPWorkFunctionUPP ( void *globalRefCon, ComponentMPWorkFunctionHeaderRecordPtr header, ComponentMPWorkFunctionUPP userUPP );

    Параметры

    header
    userUPP

    Возвращаемое значение

    См. описание ComponentResult тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    void DisposeComponentMPWorkFunctionUPP ( ComponentMPWorkFunctionUPP userUPP );

    Параметры

    userUPP

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    GetMissingComponentResourceUPP NewGetMissingComponentResourceUPP ( GetMissingComponentResourceProcPtr userRoutine );

    Параметры

    userRoutine

    Возвращаемое значение

    См. описание GetMissingComponentResourceUPP тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    OSErr InvokeGetMissingComponentResourceUPP ( Component c, OSType resType, SInt16 resID, void *refCon, Handle *resource, GetMissingComponentResourceUPP userUPP );

    Параметры

    c
    resType
    resource
    userUPP

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    void DisposeGetMissingComponentResourceUPP ( GetMissingComponentResourceUPP userUPP );

    Параметры

    userUPP

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Регистрирует компонент, сохраненный в памяти.

    Объявление

    Objective C

    Component RegisterComponent ( ComponentDescription *cd, ComponentRoutineUPP componentEntryPoint, SInt16 global, Handle componentName, Handle componentInfo, Handle componentIcon );

    Параметры

    cd

    Указатель на a ComponentDescription структура, описывающая компонент, который будет зарегистрирован. Необходимо правильно заполнить поля этой структуры прежде, чем вызвать эту функцию. Когда приложения ищут компоненты с помощью FindNextComponent функция, Менеджер компонентов сравнивает атрибуты, которые Вы указываете здесь с указанными приложением. Если атрибуты соответствуют, Менеджер компонентов возвращает идентификатор компонента приложению.

    componentEntryPoint

    Универсальный указатель процедуры (UPP) к основной точке входа Вашего компонента. Функция, именуемая этим параметром, получает все запросы на компонент. Посмотрите ComponentRoutineProcPtr обратный вызов для получения дополнительной информации о создании функции компонента.

    global

    Ряд отмечает, которые управляют объемом регистрации компонента. Посмотрите Компонентные флаги Ресурса Регистра для описания флагов.

    componentName

    Дескриптор к имени компонента. Установите этот параметр на NULL если Вы не хотите присваивать имя к компоненту.

    componentInfo

    Дескриптор к информационной строке компонента. Установите этот параметр на NULL если Вы не хотите присваивать информационную строку компоненту.

    componentIcon

    Дескриптор к значку компонента (32 32 пиксель черно-белый значок). Установите этот параметр на NULL если Вы не хотите предоставлять значок для этого компонента. Обратите внимание на то, что этот значок не используется Средством поиска, Вы предоставляете значок только так, чтобы другие компоненты или приложения могли вывести на экран значок Вашего компонента в случае необходимости.

    Возвращаемое значение

    Уникальный идентификатор компонента присвоился к компоненту Менеджером компонентов или, если это не может зарегистрировать компонент, NULL. См. описание Component тип данных.

    Обсуждение

    Прежде чем компонент может использоваться приложением, компонент должен быть зарегистрирован в Менеджере компонентов. Приложения могут тогда найти и открыть компонент с помощью стандартных функций Менеджера компонентов.

    Компоненты Вы регистрируетесь в RegisterComponent когда Вы вызываете эту функцию, функция должна быть в памяти. Если Вы хотите зарегистрировать компонент, который сохранен в ветви ресурсов файла, используйте RegisterComponentResource функция. Используйте RegisterComponentResourceFile функционируйте для регистрации всех компонентов в ветви ресурсов файла. Менеджер компонентов автоматически регистрирует ресурсы компонента, сохраненные в файлах типами файлов 'thng' это сохранено в папке Extensions. См. «Ресурсы» для получения дополнительной информации о файлах ресурсов компонента.

    Обратите внимание на то, что компонент, находящийся в Вашей «куче» приложения, остается зарегистрированным, пока Ваше приложение не не регистрирует его или выходы. Когда приложение выходит, Менеджер компонентов автоматически закрывает любые соединения компонентов к тому приложению. Кроме того, если приложение зарегистрировало компоненты, находящиеся в его пространстве «кучи», Менеджер компонентов автоматически не регистрирует те компоненты. Компонент, находящийся в системной «куче» и зарегистрированный Вашим приложением, остается зарегистрированным, пока Ваше приложение не не регистрирует его или пока не закрывается компьютер.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Регистрирует компонент, сохраненный в файле ресурсов.

    Объявление

    Objective C

    Component RegisterComponentResource ( ComponentResourceHandle cr, SInt16 global );

    Параметры

    cr

    Дескриптор к ресурсу компонента, описывающему компонент, который будет зарегистрирован. Ресурс компонента содержит всю требуемую информацию для регистрации компонента. Компоненты, которые Вы регистрируете в этой функции, должны быть сохранены в файле ресурсов как ресурс компонента. Менеджер компонентов автоматически регистрирует ресурсы компонента, сохраненные в файлах типами файлов 'thng' это сохранено в папке Extensions. См. «Ресурсы» для получения дополнительной информации о файлах ресурсов компонента.

    global

    Ряд отмечает, который управляет объемом регистрации компонента. Посмотрите Компонентные флаги Ресурса Регистра для описания флагов.

    Возвращаемое значение

    Уникальный идентификатор компонента присвоился к компоненту Менеджером компонентов, или NULL если функция не могла бы зарегистрировать компонент. См. описание Component тип данных.

    Обсуждение

    Прежде чем компонент может использоваться приложением, компонент должен быть зарегистрирован в Менеджере компонентов. Приложения могут тогда найти и открыть компонент с помощью стандартных функций Менеджера компонентов.

    Если Вы хотите зарегистрировать компонент, который находится в памяти, используйте RegisterComponent функция.

    Эта функция фактически не загружает код, указанный ресурсом компонента в память. Скорее Менеджер компонентов загружается, компонент кодируют в первый раз, когда приложение открывает компонент. Если Менеджер компонентов не может найти файл, открытые сбои запроса, если код не находится в том же файле как ресурс компонента или.

    Обратите внимание на то, что компонент, зарегистрированный локально Вашим приложением, остается зарегистрированным, пока Ваше приложение не не регистрирует его или выходы. Когда приложение выходит, Менеджер компонентов автоматически закрывает любые соединения компонентов к тому приложению. Кроме того, если приложение зарегистрировало компоненты, находящиеся в его пространстве «кучи», Менеджер компонентов автоматически не регистрирует те компоненты. Компонент, зарегистрированный глобально Вашим приложением, остается зарегистрированным, пока Ваше приложение не не регистрирует его или пока не закрывается компьютер.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Регистры все ресурсы компонента в данном файле ресурсов.

    Объявление

    Objective C

    SInt32 RegisterComponentResourceFile ( SInt16 resRefNum, SInt16 global );

    Параметры

    resRefNum

    Ссылочный номер файла ресурсов, содержащего компоненты для регистрации.

    global

    Ряд отмечает, которые управляют объемом регистрации компонентов в файле ресурсов. Посмотрите Компонентные флаги Ресурса Регистра для описания флагов.

    Возвращаемое значение

    Если все компоненты в указанном файле ресурсов успешно регистрируются, число компонентов зарегистрировалось. Если указанное число ссылки на файл недопустимо, отрицательный функциональный результат, если один или больше компонентов в файле ресурсов не мог бы быть зарегистрирован, или.

    Обсуждение

    Прежде чем компонент может использоваться приложением, компонент должен быть зарегистрирован в Менеджере компонентов. Менеджер компонентов автоматически регистрирует ресурсы компонента, сохраненные в файлах типами файлов 'thng' это сохранено в папке Extensions. Для описания формата и содержания ресурсов компонента, см. «Ресурсы».

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Удаляет компонент из списка избирателей Менеджера компонентов.

    Объявление

    Objective C

    OSErr UnregisterComponent ( Component aComponent );

    Параметры

    aComponent

    Компонент, который будет удален. Приложения, регистрирующие компоненты, могут получить этот идентификатор из RegisterComponent или RegisterComponentResource функции. Компонент не должен использоваться никакими приложениями или компонентами. Можно использовать экземпляр компонента здесь, но необходимо принудить тип данных соответственно.

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов. Если существуют открытые соединения с компонентом, a возвратов validInstancesExist ошибка.

    Обсуждение

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

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    OSErr RegisterComponentFile ( const FSSpec *spec, short global );

    Параметры

    spec

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.5.

    Не доступный 64-разрядным приложениям.

  • Объявление

    Objective C

    OSErr RegisterComponentFileEntries ( const FSSpec *spec, short global, const ComponentDescription *toRegister, UInt32 registerCount );

    Параметры

    spec
    toRegister
    registerCount

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.5.

    Не доступный 64-разрядным приложениям.

  • Объявление

    Objective C

    OSErr RegisterComponentFileRef ( const FSRef *ref, SInt16 global );

    Параметры

    ref

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    OSErr RegisterComponentFileRefEntries ( const FSRef *ref, SInt16 global, const ComponentDescription *toRegister, UInt32 registerCount );

    Параметры

    ref
    toRegister
    registerCount

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Вызывает указанную функцию Вашего компонента.

    Объявление

    Objective C

    ComponentResult CallComponentFunction ( ComponentParameters *params, ComponentFunctionUPP func );

    Параметры

    params

    Указатель на ComponentDescription структура, что Ваш компонент получен от Менеджера компонентов. Это параметры, первоначально предоставленные приложением который названный Вашим компонентом.

    func

    Универсальный указатель процедуры на функцию компонента, которая должна обработать запрос. Менеджер компонентов вызывает функцию, именуемую func параметр, с помощью соглашений о вызовах Паскаля, с параметрами, которые были первоначально предоставлены приложением который названные компонентом. Функция, именуемая этим параметром, должна возвратить функциональный результат типа ComponentResult указание успешности или неуспешности работы. Посмотрите ComponentRoutineProcPtr обратный вызов для получения дополнительной информации о функциях компонента.

    Возвращаемое значение

    Значение, возвращающееся функцией, именуемой func параметр. Ваш компонент должен использовать это значение для установки текущей ошибки для этого соединения. Можно использовать SetComponentInstanceError функционируйте для установки текущей ошибки.

    Обсуждение

    Когда служба запросов приложения от Вашего компонента, Ваш компонент получает структуру параметров компонента, содержащую параметры, которые обеспечило приложение, когда это вызвало Ваш компонент. Ваш компонент может использовать эту структуру для доступа к параметрам непосредственно. Также можно использовать или эту функцию или CallComponentFunctionWithStorage извлечь те параметры и передать их подпрограмме Вашего компонента. Путем использования в своих интересах этих функций можно упростить структуру кода компонента.

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

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Вызывает указанную функцию Вашего компонента.

    Объявление

    Objective C

    ComponentResult CallComponentFunctionWithStorage ( Handle storage, ComponentParameters *params, ComponentFunctionUPP func );

    Параметры

    storage

    Дескриптор к памяти связался с текущим соединением. Менеджер компонентов обеспечивает этот дескриптор для Вашего компонента вместе с запросом.

    params

    Указатель на ComponentParameters структура, что Ваш компонент получен от Менеджера компонентов. Это параметры, первоначально предоставленные приложением который названный Вашим компонентом.

    func

    Универсальный указатель процедуры на функцию компонента, которая должна обработать запрос. Менеджер компонентов вызывает функцию, именуемую func параметр, с помощью соглашений о вызовах Паскаля, с параметрами, которые были первоначально предоставлены приложением который названные компонентом. Этим параметрам предшествует дескриптор к памяти, связанной с текущим соединением. Функция, именуемая func параметр должен возвратить функциональный результат типа ComponentResult указание успешности или неуспешности работы. Посмотрите ComponentRoutineProcPtr обратный вызов для получения дополнительной информации о функциях компонента.

    Возвращаемое значение

    Значение, возвращающееся функцией, именуемой func параметр. Ваш компонент должен использовать это значение для установки текущей ошибки для этого соединения. Используйте SetComponentInstanceError функционируйте для установки текущей ошибки для соединения.

    Обсуждение

    Когда служба запросов приложения от Вашего компонента, Ваш компонент получает структуру параметров компонента, содержащую параметры, которые обеспечило приложение, когда это вызвало Ваш компонент. Ваш компонент может использовать эту структуру для доступа к параметрам непосредственно. Также можно использовать любого CallComponentFunction функционируйте или эта функция, чтобы извлечь те параметры и передать их подпрограмме Вашего компонента. Путем использования в своих интересах этих функций можно упростить структуру кода компонента.

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

    Подпрограммы компонента, которым не нужны глобальные данные, должны использовать CallComponentFunction вместо этого.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    ComponentResult CallComponentFunctionWithStorageProcInfo ( Handle storage, ComponentParameters *params, ProcPtr func, ProcInfoType funcProcInfo );

    Параметры

    storage
    params
    funcProcInfo

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Определяет число открытых соединений, являющихся управляемым указанным компонентом.

    Объявление

    Objective C

    long CountComponentInstances ( Component aComponent );

    Параметры

    aComponent

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

    Возвращаемое значение

    Число открытых соединений для указанного компонента.

    Обсуждение

    Эта функция может быть полезной, если Вы хотите ограничить число соединений для Вашего компонента или если Ваш компонент должен выполнить специальную обработку на основе числа открытых соединений.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Позволяет Вашему компоненту получать дескриптор к памяти, связанной с соединением.

    Объявление

    Objective C

    Handle GetComponentInstanceStorage ( ComponentInstance aComponentInstance );

    Параметры

    aComponentInstance

    Соединение, для которого можно получить связанную память. Когда соединение открыто, Менеджер компонентов обеспечивает экземпляр компонента для Вашего компонента. Можно использовать идентификатор компонента здесь, но необходимо принудить тип данных соответственно.

    Возвращаемое значение

    Дескриптор к памяти связался с указанным соединением.

    Обсуждение

    Как правило, Ваш компонент не должен использовать эту функцию, потому что Менеджер компонентов обеспечивает этот дескриптор для Вашего компонента каждый раз, когда клиентское приложение запрашивает службу от этого соединения.

    Ваш компонент говорит Менеджер компонентов о памяти, связанной с соединением путем вызова SetComponentInstanceStorage функция.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Позволяет Ваш компонент ассоциативной памяти с соединением.

    Объявление

    Objective C

    void SetComponentInstanceStorage ( ComponentInstance aComponentInstance, Handle theStorage );

    Параметры

    aComponentInstance

    Соединение для соединения с выделенной памятью. Когда соединение открыто, Менеджер компонентов обеспечивает экземпляр компонента для Вашего компонента. Можно использовать идентификатор компонента здесь, но необходимо принудить тип данных соответственно.

    theStorage

    Дескриптор к памяти, которую Ваш компонент выделил для соединения. Ваш компонент должен выделить эту память в текущей «куче». Менеджер компонентов сохраняет этот дескриптор и обеспечивает его для Вашего компонента, вместе с другими параметрами, в последующих запросах к этому соединению.

    Обсуждение

    Когда приложение или компонент открывают соединение с Вашим компонентом, Менеджер компонентов отправляет Вашему компоненту открытый запрос. В ответ на этот открытый запрос Ваш компонент должен установить среду для обслуживания соединения. Как правило, Ваш компонент должен выделить некоторую память для соединения. Ваш компонент может тогда использовать ту память для поддержания информации состояния, надлежащей соединению.

    Ваш компонент должен избавиться от любой выделенной памяти для соединения только в ответ на близкий запрос. Обратите внимание на то, что каждый раз, когда открытый запрос перестал работать, Менеджер компонентов всегда выпускает близкий запрос. Кроме того, значение, сохраненное этой функцией, всегда передается близкому запросу, таким образом, это должно быть допустимо или NULL. Если открытый запрос пытается избавиться от своей выделенной памяти перед возвратом, он должен вызвать эту функцию снова с a NULL дескриптор, чтобы препятствовать Менеджеру компонентов передавать недопустимый дескриптор близкому запросу.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Вызывает целевую функцию запроса компонента и сообщает компоненту, что это было предназначено другим компонентом.

    Объявление

    Objective C

    ComponentResult ComponentSetTarget ( ComponentInstance ci, ComponentInstance target );

    Параметры

    ci

    Экземпляр компонента, к которому можно отправить целевой запрос (компонент, предназначенный). Можно использовать идентификатор компонента здесь, но необходимо принудить тип данных соответственно.

    target

    Экземпляр компонента, выпуская целевой запрос.

    Возвращаемое значение

    Значение, которое предназначенный экземпляр компонента возвращает в ответ на целевой запрос, или badComponentSelector если предназначенный компонент не поддерживает целевой запрос.

    Обсуждение

    Ваш компонент может предназначаться для экземпляра компонента, не получая компонент, или Ваш компонент может сначала получить компонент и затем предназначаться для определенного экземпляра компонента.

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

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.5.

    Не доступный 64-разрядным приложениям.

  • Информация об ошибке передач к Менеджеру компонентов, устанавливающему текущее ошибочное значение для надлежащего соединения.

    Объявление

    Objective C

    void SetComponentInstanceError ( ComponentInstance aComponentInstance, OSErr theError );

    Параметры

    aComponentInstance

    Соединение, для которого можно установить ошибку. Когда соединение открыто, Менеджер компонентов обеспечивает экземпляр компонента для Вашего компонента. Менеджер компонентов также обеспечивает экземпляр компонента для Вашего компонента как первый параметр в params поле структуры параметров.

    theError

    Новое значение для текущей ошибки.

    Обсуждение

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

    Приложения получают эту информацию об ошибке путем вызова GetComponentInstanceError функция. Документация для Вашего компонента должна указать, как компонент указывает ошибки.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Получает значение ссылочной константы для Вашего компонента.

    Объявление

    Objective C

    long GetComponentRefcon ( Component aComponent );

    Параметры

    aComponent

    Компонент, ссылочную константу которого Вы хотите получить. Можно использовать экземпляр компонента здесь, но необходимо принудить тип данных соответственно.

    Возвращаемое значение

    Ссылочная константа для указанного компонента.

    Обсуждение

    Существует одна ссылочная константа для каждого компонента, независимо от числа соединений с тем компонентом. Когда Ваш компонент регистрируется, Менеджер компонентов устанавливает эту ссылочную константу в 0.

    Ссылочная константа является 4-байтовым значением, которое Ваш компонент может использовать всегда, Вы решаете. Например, Вы могли бы использовать ссылочную константу для хранения адреса структуры данных, совместно использующейся всеми соединениями, сохраняемыми компонентом. Необходимо выделить совместно использованные структуры в системной «куче». Ваш компонент должен освободить структуру, когда ее последнее соединение закрывается или когда это не зарегистрировано.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Устанавливает ссылочную константу для Вашего компонента.

    Объявление

    Objective C

    void SetComponentRefcon ( Component aComponent, long theRefcon );

    Параметры

    aComponent

    Компонент, ссылочную константу которого Вы хотите установить. Можно использовать экземпляр компонента здесь, но необходимо принудить тип данных соответственно.

    theRefcon

    Ссылочное постоянное значение, которое Вы хотите установить для Вашего компонента. Ваш компонент может получить ссылочное постоянное использование GetComponentRefcon функция.

    Обсуждение

    Существует одна ссылочная константа для каждого компонента, независимо от числа соединений с тем компонентом. Когда Ваш компонент регистрируется, Менеджер компонентов устанавливает эту ссылочную константу в 0.

    Ссылочная константа является 4-байтовым значением, которое Ваш компонент может использовать всегда, Вы решаете. Например, Вы могли бы использовать ссылочную константу для хранения адреса структуры данных, совместно использующейся всеми соединениями, сохраняемыми компонентом. Необходимо выделить совместно использованные структуры в системной «куче». Ваш компонент должен освободить структуру, когда ее последнее соединение закрывается или когда это не зарегистрировано.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    OSErr OpenAComponentResFile ( Component aComponent, ResFileRefNum *resRef );

    Параметры

    aComponent

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Позволяет Вашему компоненту получать доступ к своему файлу ресурсов.

    Объявление

    Objective C

    ResFileRefNum OpenComponentResFile ( Component aComponent );

    Параметры

    aComponent

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

    Возвращаемое значение

    Ссылочный номер, который Ваш компонент может использовать для чтения данных из надлежащего файла ресурсов. Если указанный компонент не имеет связанного файла ресурсов или если Менеджер компонентов не может открыть файл ресурсов, функция возвращается 0 или отрицательное число.

    Обсуждение

    Эта функция открывает файл ресурсов с разрешением только для чтения. Менеджер компонентов добавляет файл ресурсов к текущей цепочке ресурса. Ваш компонент должен закрыть файл ресурсов с CloseComponentResFile функция прежде, чем возвратиться к вызывающему приложению. Обратите внимание на то, что существует только один файл ресурсов, связанный с компонентом.

    Ваш компонент может использовать FSpOpenResFile или эквивалентный Менеджер ресурсов функционирует для открытия других файлов ресурсов, но необходимо использовать эту функцию для открытия файла ресурсов компонента.

    Если Вы храните свой компонент в ресурсе компонента, но регистрируете компонент в RegisterComponent функция, а не с RegisterComponentResource или RegisterComponentResourceFile функция, Ваш компонент не может получить доступ к своему файлу ресурсов с этой функцией.

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

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Закрывает файл ресурсов, который Ваш компонент открыл ранее с OpenComponentResFile функция.

    Объявление

    Objective C

    OSErr CloseComponentResFile ( ResFileRefNum refnum );

    Параметры

    refnum

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

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    OSErr GetComponentResource ( Component aComponent, OSType resType, SInt16 resID, Handle *theResource );

    Параметры

    aComponent
    resType
    theResource

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Объявление

    Objective C

    OSErr GetComponentIndString ( Component aComponent, Str255 theString, SInt16 strListID, SInt16 index );

    Параметры

    aComponent
    theString

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Позволяет Вашему компоненту передавать запрос указанному компоненту.

    Объявление

    Objective C

    ComponentResult DelegateComponentCall ( ComponentParameters *originalParams, ComponentInstance ci );

    Параметры

    originalParams

    Указатель на ComponentParameters структура обеспечила для Вашего компонента Менеджером компонентов.

    ci

    Экземпляр компонента, который должен обработать запрос. Менеджер компонентов обеспечивает экземпляр компонента для Вашего компонента, когда это открывает соединение с другим компонентом с OpenComponent или OpenDefaultComponent функция. Необходимо указать экземпляр компонента; эта функция не принимает идентификатор компонента.

    Возвращаемое значение

    Результат компонента, возвращенный указанным компонентом.

    Обсуждение

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

    Можно также вызвать службы другого компонента с помощью стандартных механизмов, используемых приложениями. Менеджер компонентов тогда передает запросы надлежащему компоненту, и Ваш компонент получает результаты тех запросов.

    Ваш компонент должен открыть соединение с компонентом, которому должны быть переданы запросы. Ваш компонент должен закрыть то соединение, когда это закончило использовать службы другого компонента.

    Ваш компонент никогда не должен использовать эту функцию с открытыми или близкими запросами от Менеджера компонентов — всегда используют OpenComponent и CloseComponent функции для управления соединениями с другими компонентами.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Позволяет Вашему компоненту получать другой компонент.

    Объявление

    Objective C

    Component CaptureComponent ( Component capturedComponent, Component capturingComponent );

    Параметры

    capturedComponent

    Компонент, который будет получен. Ваш компонент может получить этот идентификатор из FindNextComponent функционируйте или от регистрационных функций компонента. Можно использовать экземпляр компонента здесь, но необходимо принудить тип данных соответственно.

    capturingComponent

    Ваш компонент. Обратите внимание на то, что можно использовать экземпляр компонента (соответственно принужденный), который компонент получил в его открытом запросе в этом параметре.

    Возвращаемое значение

    Новый идентификатор компонента. Ваш компонент может использовать этот новый идентификатор для обращения к полученному компоненту. Например, Ваш компонент может открыть полученный компонент путем обеспечения этого идентификатора для OpenComponent структура. Ваш компонент должен обеспечить этот идентификатор для UncaptureComponent функция для указания компонента, который будет восстановлен поисковому списку. Если компонент, который Вы хотите получить, уже получен, идентификатор компонента установлен в NULL. См. описание Component тип данных.

    Обсуждение

    Как правило, Ваш компонент получает другой компонент, когда Вы хотите переопределить все или некоторые функции, предоставленные компонентом или обеспечить новые функции. Например, компонент под названием NewMath мог бы получить компонент под названием OldMath. Предположим, что компонент NewMath обеспечивает новую функцию, DoExponent. Каждый раз, когда NewMath получает запрос экспоненты, он может обработать сам запрос. Для всех других запросов NewMath мог бы вызвать компонент OldMath для выполнения запроса.

    После получения компонента Ваш компонент мог бы принять решение предназначаться для определенного экземпляра полученного компонента.

    В ответ на эту функцию Менеджер компонентов удаляет указанный компонент из списка доступных компонентов. В результате приложения не могут получить информацию о полученном компоненте или получить доступ к нему. Текущие клиенты полученного компонента не затронуты этой функцией.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Позволяет Вашему компоненту не получать ранее полученный компонент.

    Объявление

    Objective C

    OSErr UncaptureComponent ( Component aComponent );

    Параметры

    aComponent

    Компонент, который будет не получен. Ваш компонент получает этот идентификатор из CaptureComponent функция. Можно использовать экземпляр компонента здесь, но необходимо принудить тип данных соответственно.

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Обсуждение

    Эта функция восстанавливает указанный компонент к списку доступных компонентов. Приложения могут тогда получить доступ к компоненту и получить информацию о функциях Менеджера компонентов использования компонента.

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Изменяет поисковый порядок на зарегистрированные компоненты.

    Объявление

    Objective C

    OSErr SetDefaultComponent ( Component aComponent, SInt16 flags );

    Параметры

    aComponent

    Компонент, которого Вы желаете перемещенный в переднюю сторону поисковой цепочки. Порядок поисковых цепочечных влияний, которые компонент Менеджер компонентов выбирает в ответ на использование приложения OpenDefaultComponent и FindNextComponent функции. Можно использовать экземпляр компонента здесь, но необходимо принудить тип данных соответственно.

    flags

    Значение, указывающее управляющую информацию, управляющую работой. Значение этого параметра управляет, какие поля описания компонента Менеджер компонентов исследует во время работы переупорядочивания. Установите надлежащие флаги в 1 для определения полей, исследованных во время работы переупорядочивания. Посмотрите Компонентные Флаги Значения по умолчанию Набора для описания значений, которые можно использовать здесь.

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Обсуждение

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

    Оператор импорта

    Objective C

    @import CoreServices;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

Обратные вызовы

  • Объявление

    Swift

    typealias ComponentMPWorkFunctionProcPtr = CFunctionPointer<((UnsafeMutablePointer<Void>, ComponentMPWorkFunctionHeaderRecordPtr) -> ComponentResult)>

    Objective C

    typedef ComponentResult (*ComponentMPWorkFunctionProcPtr) ( void * globalRefCon, ComponentMPWorkFunctionHeaderRecordPtr header );

    Параметры

    header

    Возвращаемое значение

    См. описание ComponentResult тип данных.

    Оператор импорта

    Objective C

    @import CoreServices;

    Swift

    import CoreServices

    Доступность

    Доступный в OS X v10.0 и позже.

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

    Объявление

    Swift

    typealias ComponentRoutineProcPtr = CFunctionPointer<((UnsafeMutablePointer<ComponentParameters>, Handle) -> ComponentResult)>

    Objective C

    typedef ComponentResult (*ComponentRoutineProcPtr) ( ComponentParameters * cp, Handle componentStorage );

    Параметры

    cp

    A ComponentParameters структура. what поле структуры параметров компонента указывает действие, которое должен выполнить Ваш компонент. Параметры, с которыми клиент вызвал Вашу функцию, содержатся в params поле структуры параметров компонента. Ваш компонент может использовать CallComponentFunction или CallComponentFunctionWithStorage функционируйте для извлечения параметров из этой структуры.

    componentStorage

    Дескриптор к любой памяти, которую Ваш компонент связал с соединением. Как правило, после получения открытого запроса, Ваш компонент выделяет память и использует SetComponentInstanceStorage функционируйте для соединения выделенной памяти с соединением компонентов.

    Возвращаемое значение

    Ваш компонент должен возвратить значение типа ComponentResult. Если Ваш компонент не возвращает информацию об ошибке как свой функциональный результат, это должно указать ошибки с помощью SetComponentInstanceError функция. См. описание ComponentResult тип данных.

    Обсуждение

    Вы передаете указатель на свою функцию обратного вызова компонента к Менеджеру компонентов при регистрации компонента. Когда другое приложение или компонент запрашивают свои службы, Менеджер компонентов может тогда вызвать Ваш компонент. Когда Ваш компонент получает запрос, он должен выполнить действие, указанное в what поле структуры параметров компонента.

    Указатель, который Вы передаете Менеджеру компонентов, должен быть универсальным указателем процедуры (UPP). Определение типа данных UPP для Вашей функции компонента следующие:

    • typedef (ComponentRoutineProcPtr) ComponentRoutineUPP;

    Перед использованием Вашей функции компонента необходимо сначала создать UPP для функции обратного вызова, с помощью NewComponentRoutineUPP функция, как показано здесь:

    • ComponentRoutineUPP MyComponentRoutineUPP;
    • MyComponentRoutineUPP = NewComponentRoutineUPP(&MyComponentRoutineProc)

    Вы тогда передаете MyComponentRoutineUPP к Менеджеру компонентов, когда Вы регистрируете свой компонент. Менеджер компонентов вызовет Вашу функцию каждый раз, когда Ваш компонент получает запрос. Если Вы хотите вызвать свою функцию компонента сами, можно использовать InvokeComponentRoutineUPP функция.

    • result = InvokeComponentRoutineUPP &myParams, myStorage, MyComponentRoutineUPP)

    Когда Вы закончены с Вашей функцией обратного вызова компонента, необходимо избавиться от универсального указателя процедуры, связанного с нею, с помощью DisposeComponentRoutineUPP функция.

    • DisposeComponentRoutineUPP(MyComponentRoutineUPP);

    Для обеспечения компонента Вы определяете функцию компонента и предоставляете надлежащую регистрационную информацию. Вы храните свою функцию компонента в ресурсе кода и обычно храните регистрационную информацию Вашего компонента как ресурсы в файле компонента.

    Оператор импорта

    Objective C

    @import CoreServices;

    Swift

    import CoreServices

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    typealias GetMissingComponentResourceProcPtr = CFunctionPointer<((Component, OSType, Int16, UnsafeMutablePointer<Void>, UnsafeMutablePointer<Handle>) -> OSErr)>

    Objective C

    typedef OSErr (*GetMissingComponentResourceProcPtr) ( Component c, OSType resType, short resID, void * refCon, Handle * resource );

    Параметры

    c
    resType
    resource

    Возвращаемое значение

    Код результата. Посмотрите Коды Результата Менеджера компонентов.

    Оператор импорта

    Objective C

    @import CoreServices;

    Swift

    import CoreServices

    Доступность

    Доступный в OS X v10.0 и позже.

Типы данных

  • Объявление

    Swift

    struct ComponentAliasResource { var cr: ComponentResource var aliasCD: ComponentDescription }

    Objective C

    struct ComponentAliasResource { ComponentResource cr; ComponentDescription aliasCD; }; typedef struct ComponentAliasResource ComponentAliasResource;

    Поля

    cr
    aliasCD

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    struct ComponentDependencyArray { SInt32 count; ComponentDescription descArray[1]; };

    Поля

    count
    descArray
  • Объявление

    Swift

    struct ComponentDescription { var componentType: OSType var componentSubType: OSType var componentManufacturer: OSType var componentFlags: UInt32 var componentFlagsMask: UInt32 }

    Objective C

    struct ComponentDescription { OSType componentType; OSType componentSubType; OSType componentManufacturer; unsigned long componentFlags; unsigned long componentFlagsMask; }; typedef struct ComponentDescription ComponentDescription;

    Поля

    componentType

    Четыре кода символа, идентифицирующие тип компонента. Все компоненты определенного типа должны поддерживать единый набор функций интерфейса. Например, рисование компонентов у всех есть тип компонента 'draw'.

    Если Вы разрабатываете приложение, использующее компоненты, можно использовать это поле для поиска компонентов данного типа путем указания типа компонента в этом поле структуры описания компонента, которую Вы предоставляете к FindNextComponent функционируйте или CountComponents функция. Значение 0 действует в качестве подстановочного знака.

    При разработке компонента он должен поддерживать все стандартные функции для типа компонента, указанного этим полем. Коды типа со всеми символами нижнего регистра резервируются для определения Apple. Можно определить собственный код типа компонента, пока Вы регистрируете его в Component Registry Group Apple.

    componentSubType

    Четыре кода символа, идентифицирующие подтип компонента. Различные подтипы типа компонента могут поддерживать дополнительные функции или обеспечить интерфейсы, расширяющиеся вне стандартных функций для данного типа компонента. Например, подтип рисования компонентов указывает тип объекта, который рисует компонент. Рисование компонентов, рисующих овалы, имеет подтип 'oval'.

    Если Вы разрабатываете приложение, использующее компоненты, можно использовать componentSubType поле для выполнения более определенной работы поиска, чем является возможным использованием только componentType поле. Путем указания определенных значений для обоих полей в структуре описания компонента, которую Вы предоставляете к FindNextComponent или CountComponents функция, Ваше приложение получает информацию о только тех компонентах, удовлетворяющих оба из этих критериев поиска. Значение 0 действует в качестве подстановочного знака.

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

    componentManufacturer

    Четыре кода символа, идентифицирующие производителя компонента. Это поле допускает дальнейшее дифференцирование между отдельными компонентами. Например, компоненты, сделанные определенным производителем, могут поддерживать расширенный набор функций. Компоненты, предоставленные Apple, используют значение производителя 'appl'.

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

    При разработке компонента Вы получаете свой код производителя, который может совпасть с Вашей подписью приложения от Component Registry Group Apple.

    componentFlags

    32-разрядное поле, предоставляющее дополнительную информацию об определенном компоненте.

    Старший разряд 8 битов резервируется для определения Менеджером компонентов. При разработке приложения необходимо обычно устанавливать эти биты в 0.

    Младший разряд 24 бита является определенным для каждого типа компонента. Эти флаги могут использоваться для указания присутствия функций или возможностей в данном компоненте.

    Если Вы разрабатываете приложение, использующее компоненты, можно использовать эти флаги для дальнейшего, узкого критерии поиска, примененные FindNextComponent или CountComponents функция. Если Вы используете componentFlags поле в поиске компонента, Вы используете componentFlagsMask поле для указания, какие флаги нужно рассмотреть в поиске.

    При разработке компонента можно использовать эти флаги для указания любых специальных возможностей или функций компонента. Можно использовать все 24 бита, как надлежащие его типу компонента. Необходимо установить все неиспользованные биты в 0.

    componentFlagsMask

    32-разрядное поле, указывающее который флаги в componentFlags поле относится к определенной поисковой работе компонента.

    Если Вы разрабатываете приложение, использующее компоненты, Ваше приложение должно установить каждый бит, соответствующий флагу в componentFlags поле, которое нужно рассмотреть как критерий поиска FindNextComponent или CountComponents функционируйте к 1. Менеджер компонентов рассматривает только эти флаги во время поиска. Вы указываете желаемое флаговое значение (или 0 или 1) в componentFlags поле.

    Например, для поиска компонента с определенным флагом управления, установленным в 0, устанавливает надлежащий бит в ComponentFlags поле к 0 и тот же бит в ComponentFlagsMask поле к 1. Для поиска компонента с определенным флагом управления, установленным в 1, устанавливает бит в ComponentFlags поле к 1 и тот же бит в ComponentFlagsMask поле к 1. Для игнорирования флага установите бит в ComponentFlagsMask поле к 0.

    При разработке компонента компонент должен установить componentFlagsMask поле в его структуре описания компонента к 0.

    Обсуждение

    Структура ComponentDescription идентифицирует характеристики компонента, включая тип услуг, предложенных компонентом и его производителем.

    Приложения и компоненты используют структуры описания компонента по-разному. Приложение, использующее компоненты, указывает критерии выбора для компонента в структуре описания компонента. Функции FindNextComponent , CountComponents , и GetComponentInfo все использование структура описания компонента для указания критериев их поиска.

    Компонент использует структуру описания компонента, чтобы указать ее информацию о регистрации и возможности и идентифицировать себя для Менеджера компонентов. Если Ваш компонент сохранен в ресурсе компонента, информацией в структуре описания компонента должна быть часть того ресурса. См. описание компонента ‘thng’ ресурс. Если Вы разработали приложение, регистрирующее Ваш компонент, то приложение должно предоставить структуру описания компонента к RegisterComponent функция. См. “Регистрирующиеся Компоненты” для получения информации о регистрирующихся компонентах.

    ComponentDescription тип данных определяет структуру описания компонента. Обратите внимание на то, что допустимые значения полей в структуре описания компонента определяются спецификацией типа компонента. Например, все компоненты компрессора изображения должны использовать componentSubType поле для указания алгоритма сжатия, используемого компрессором.

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    typealias ComponentFunctionUPP = UniversalProcPtr

    Objective C

    typedef UniversalProcPtr ComponentFunctionUPP;

    Оператор импорта

    Objective C

    @import CoreServices;

    Swift

    import CoreServices

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    struct ComponentInstanceRecord { var data: (Int) }

    Objective C

    struct ComponentInstanceRecord { long data[1]; }; typedef struct ComponentInstanceRecord ComponentInstanceRecord; typedef ComponentInstanceRecord * ComponentInstance;

    Поля

    data

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    struct ComponentMPWorkFunctionHeaderRecord { var headerSize: UInt32 var recordSize: UInt32 var workFlags: UInt32 var processorCount: UInt16 var unused: UInt8 var isRunning: UInt8 }

    Objective C

    struct ComponentMPWorkFunctionHeaderRecord { UInt32 headerSize; UInt32 recordSize; UInt32 workFlags; UInt16 processorCount; UInt8 unused; UInt8 isRunning; }; typedef struct ComponentMPWorkFunctionHeaderRecord ComponentMPWorkFunctionHeaderRecord; typedef ComponentMPWorkFunctionHeaderRecord * ComponentMPWorkFunctionHeaderRecordPtr;

    Поля

    headerSize
    recordSize
    workFlags
    processorCount
    unused
    isRunning

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    typealias ComponentMPWorkFunctionUPP = ComponentMPWorkFunctionProcPtr

    Objective C

    typedef ComponentMPWorkFunctionProcPtr ComponentMPWorkFunctionUPP;

    Обсуждение

    Для получения дополнительной информации см. описание функции обратного вызова ComponentMPWorkFunctionUPP.

    Оператор импорта

    Objective C

    @import CoreServices;

    Swift

    import CoreServices

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    struct ComponentParameters { var flags: UInt8 var paramSize: UInt8 var what: Int16 var padding: UInt32 var params: (Int) }

    Objective C

    struct ComponentParameters { UInt8 flags; UInt8 paramSize; short what; long params[1]; }; typedef struct ComponentParameters ComponentParameters;

    Поля

    flags

    Зарезервированный для использования Apple.

    paramSize

    Указывает число байтов данных параметра для этого запроса. Фактические параметры сохранены в params поле.

    what

    Указывает тип запроса. Разработчики компонента определяют значение положительных значений и присваивают их запросам, поддерживающимся компонентами данного типа. Отрицательные величины резервируются для определения Apple. См. “Коды Результата” для определенных Apple значений кодов запроса.

    params

    Массив, содержащий параметры, указанные приложением который названный Вашим компонентом. Можно использовать CallComponentRoutine или CallComponentRoutineWithStorage функционируйте для преобразования этого массива в вызов стиля Паскаля подпрограммы в компоненте.

    Обсуждение

    Менеджер компонентов использует структуру параметров компонента для передачи информации компоненту о запросе из приложения. Функции, использующие этот тип данных, CallComponentFunction , CallComponentFunctionWithStorage , и DelegateComponentCallИнформация о.The в этой структуре полностью определяет запрос. Ваши службы компонента запрос как надлежащий.

    ComponentParameters тип данных определяет структуру параметров компонента.

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    struct ComponentPlatformInfo { var componentFlags: Int32 var component: ResourceSpec var platformType: Int16 }

    Objective C

    struct ComponentPlatformInfo { long componentFlags; ResourceSpec component; short platformType; }; typedef struct ComponentPlatformInfo ComponentPlatformInfo;

    Поля

    component

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    struct ComponentPlatformInfoArray { var count: Int32 var platformArray: (ComponentPlatformInfo) }

    Objective C

    struct ComponentPlatformInfoArray { long count; ComponentPlatformInfo platformArray[1]; }; typedef struct ComponentPlatformInfoArray ComponentPlatformInfoArray;

    Поля

    platformArray

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    struct ComponentRecord { var data: (Int) }

    Objective C

    struct ComponentRecord { long data[1]; }; typedef struct ComponentRecord ComponentRecord; typedef ComponentRecord * Component;

    Поля

    data

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    struct ComponentResource { var cd: ComponentDescription var component: ResourceSpec var componentName: ResourceSpec var componentInfo: ResourceSpec var componentIcon: ResourceSpec }

    Objective C

    struct ComponentResource { ComponentDescription cd; ResourceSpec component; ResourceSpec componentName; ResourceSpec componentInfo; ResourceSpec componentIcon; }; typedef struct ComponentResource ComponentResource; typedef ComponentResource * ComponentResourcePtr;

    Поля

    cd

    A ComponentDescription структура, указывающая характеристики компонента.

    component

    Структура спецификации ресурса, указывающая тип и ID ресурса кода компонента. resType поле структуры спецификации ресурса может содержать любое значение. Основная точка входа компонента должна быть при смещении 0 в ресурсе.

    componentName

    Структура спецификации ресурса, указывающая тип ресурса и ID для имени компонента. Это - строка Паскаля. Как правило, имя сохранено в ресурсе типа 'STR '.

    componentInfo

    Структура спецификации ресурса, указывающая тип ресурса и ID для информационной строки, описывающей компонент. Это - строка Паскаля. Как правило, информационная строка сохранена в ресурсе типа 'STR '. Вы могли бы использовать информацию, хранившую в этом ресурсе в диалоговом окне Get Info.

    componentIcon

    Структура спецификации ресурса, указывающая тип ресурса и ID для значка для компонента. Значки компонента сохранены как 32 32 битовые массивы. Как правило, значок сохранен в ресурсе типа 'ICON'. Обратите внимание на то, что этот значок не используется Средством поиска, Вы предоставляете значок только так, чтобы другие компоненты или приложения могли вывести на экран значок Вашего компонента в диалоговом окне в случае необходимости.

    Обсуждение

    ComponentResource тип данных определяет структуру ресурса компонента. Можно также дополнительно добавить до конца этой структуры информацию, определенную ComponentResourceExtension тип данных.

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    struct ComponentResourceExtension { var componentVersion: Int32 var componentRegisterFlags: Int32 var componentIconFamily: Int16 }

    Objective C

    struct ComponentResourceExtension { long componentVersion; long componentRegisterFlags; short componentIconFamily; }; typedef struct ComponentResourceExtension ComponentResourceExtension;

    Поля

    componentVersion

    Номер версии компонента. Если Вы указываете componentDoAutoVersion флаг в componentRegisterFlags, когда Ваш компонент регистрируется, Менеджер компонентов должен получить номер версии Вашего компонента. Или можно обеспечить номер версии в ресурсе компонента, или можно указать значение 0 для его номера версии. Если Вы указываете 0, Менеджер компонентов отправляет Вашему компоненту запрос версии для получения номера версии компонента.

    componentRegisterFlags

    Ряд флагов, содержащих дополнительную информацию о регистрации. Посмотрите Флаги Расширения Ресурса Компонента для флаговых значений.

    componentIconFamily

    Ресурс ID семьи значка. Можно предоставить семье значка в дополнение к значку, предоставленному в componentIcon поле. Обратите внимание на то, что элементы этой семьи значка не используются Средством поиска, Вы предоставляете семью значка только так, чтобы другие компоненты или приложения могли вывести на экран значок Вашего компонента в диалоговом окне в случае необходимости.

    Обсуждение

    Можно дополнительно включать в ресурс компонента информацию, определенную ComponentResourceExtension тип данных:

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    typealias ComponentResult = Int32

    Objective C

    typedef long ComponentResult;

    Обсуждение

    Оператор импорта

    Objective C

    @import CoreServices;

    Swift

    import CoreServices

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    typealias ComponentRoutineUPP = ComponentRoutineProcPtr

    Objective C

    typedef ComponentRoutineProcPtr ComponentRoutineUPP;

    Обсуждение

    Для получения дополнительной информации см. описание функции обратного вызова ComponentRoutineUPP.

    Оператор импорта

    Objective C

    @import CoreServices;

    Swift

    import CoreServices

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    struct ExtComponentResource { var cd: ComponentDescription var component: ResourceSpec var componentName: ResourceSpec var componentInfo: ResourceSpec var componentIcon: ResourceSpec var componentVersion: Int32 var componentRegisterFlags: Int32 var componentIconFamily: Int16 var count: Int32 var platformArray: (ComponentPlatformInfo) }

    Objective C

    struct ExtComponentResource { ComponentDescription cd; ResourceSpec component; ResourceSpec componentName; ResourceSpec componentInfo; ResourceSpec componentIcon; long componentVersion; long componentRegisterFlags; short componentIconFamily; long count; ComponentPlatformInfo platformArray[1]; }; typedef struct ExtComponentResource ExtComponentResource; typedef ExtComponentResource * ExtComponentResourcePtr;

    Поля

    cd
    component
    componentName
    componentInfo
    componentIcon
    platformArray

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    typealias GetMissingComponentResourceUPP = GetMissingComponentResourceProcPtr

    Objective C

    typedef GetMissingComponentResourceProcPtr GetMissingComponentResourceUPP;

    Обсуждение

    Для получения дополнительной информации см. описание функции обратного вызова GetMissingComponentResourceUPP.

    Оператор импорта

    Objective C

    @import CoreServices;

    Swift

    import CoreServices

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    struct RegisteredComponentInstanceRecord { var data: (Int) }

    Objective C

    struct RegisteredComponentInstanceRecord { long data[1]; }; typedef struct RegisteredComponentInstanceRecord RegisteredComponentInstanceRecord; typedef RegisteredComponentInstanceRecord * RegisteredComponentInstanceRecordPtr;

    Поля

    data

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    struct RegisteredComponentRecord { var data: (Int) }

    Objective C

    struct RegisteredComponentRecord { long data[1]; }; typedef struct RegisteredComponentRecord RegisteredComponentRecord; typedef RegisteredComponentRecord * RegisteredComponentRecordPtr;

    Поля

    data

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    struct ResourceSpec { var resType: OSType var resID: Int16 }

    Objective C

    struct ResourceSpec { OSType resType; short resID; }; typedef struct ResourceSpec ResourceSpec;

    Поля

    resType

    Тип ресурса.

    resID

    ID ресурса.

    Обсуждение

    ComponentResource структура использует структуру спецификации ресурса, определенную ResourceSpec тип данных, для описания кода компонента, имени, информационной строки или значка. Ресурсы, указанные структурами спецификации ресурса, должны находиться в том же файле ресурсов как сам ресурс компонента.

    Доступность

    Доступный в OS X v10.0 и позже.

Константы

  • Объявление

    Swift

    var cmpAliasNoFlags: Int { get } var cmpAliasOnlyThisFile: Int { get }

    Objective C

    enum { cmpAliasNoFlags = 0, cmpAliasOnlyThisFile = 1 };

    Константы

    • cmpAliasNoFlags

      cmpAliasNoFlags

      Доступный в OS X v10.0 и позже.

    • cmpAliasOnlyThisFile

      cmpAliasOnlyThisFile

      Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    var cmpThreadSafe: UInt32 { get } var cmpIsMissing: UInt32 { get } var cmpWantsRegisterMessage: UInt32 { get }

    Objective C

    enum { cmpThreadSafe = 1L << 28, cmpIsMissing = 1L << 29, cmpWantsRegisterMessage = 1L << 31 };

    Константы

    • cmpThreadSafe

      cmpThreadSafe

      Доступный в OS X v10.3 и позже.

    • cmpIsMissing

      cmpIsMissing

      Доступный в OS X v10.0 и позже.

    • cmpWantsRegisterMessage

      cmpWantsRegisterMessage

      Установка cmpWantsRegisterMessage бит определяет, вызывает ли Менеджер компонентов этот компонент во время регистрации. Установите этот бит в 1, если Ваш компонент нужно вызвать, когда это регистрируется; иначе, установите этот бит в 0.

      Доступный в OS X v10.0 и позже.

    Обсуждение

    Эти значения используются componentFlags поле ComponentDescription структура для предоставления дополнительной информации о компоненте.

  • Объявление

    Swift

    var componentDoAutoVersion: Int { get } var componentWantsUnregister: Int { get } var componentAutoVersionIncludeFlags: Int { get } var componentHasMultiplePlatforms: Int { get } var componentLoadResident: Int { get }

    Objective C

    enum { componentDoAutoVersion = (1 << 0), componentWantsUnregister = (1 << 1), componentAutoVersionIncludeFlags = (1 << 2), componentHasMultiplePlatforms = (1 << 3), componentLoadResident = (1 << 4) };

    Константы

    • componentDoAutoVersion

      componentDoAutoVersion

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

      Доступный в OS X v10.0 и позже.

    • componentWantsUnregister

      componentWantsUnregister

      Укажите этот флаг, если Вы хотите, чтобы Ваш компонент получил запрос нерегистра, когда это не зарегистрировано.

      Доступный в OS X v10.0 и позже.

    • componentAutoVersionIncludeFlags

      componentAutoVersionIncludeFlags

      Укажите этот флаг, если Вы хотите, чтобы Менеджер компонентов включал componentFlags поле структуры описания компонента, когда это ищет идентичные компоненты в процессе выполнения автоматического управления версиями для Вашего компонента. Если Вы не указываете этот флаг, Менеджер компонентов ищет только componentType, componentSubType, и componentManufacturer поля.

      Обратите внимание на то, что установка componentAutoVersionIncludeFlags отметьте влияет на автоматическое управление версиями только и не влияет на поисковые операции, выполняемые FindNextComponent и CountComponents.

      Доступный в OS X v10.0 и позже.

    • componentHasMultiplePlatforms

      componentHasMultiplePlatforms

      Доступный в OS X v10.0 и позже.

    • componentLoadResident

      componentLoadResident

      Доступный в OS X v10.0 и позже.

    Обсуждение

    Эти значения используются в ComponentResourceExtension структура для указания дополнительной информации о регистрации компонента.

  • Объявление

    Swift

    typealias CSComponentsThreadMode = UInt32

    Objective C

    typedef UInt32 CSComponentsThreadMode; enum { kCSAcceptAllComponentsMode = 0, kCSAcceptThreadSafeComponentsOnlyMode = 1 };

    Константы

    • kCSAcceptAllComponentsMode

      kCSAcceptAllComponentsMode

      Доступный в OS X v10.3 и позже.

    • kCSAcceptThreadSafeComponentsOnlyMode

      kCSAcceptThreadSafeComponentsOnlyMode

      Доступный в OS X v10.3 и позже.

    Оператор импорта

    Objective C

    @import CoreServices;

    Swift

    import CoreServices

    Доступность

    Доступный в OS X v10.3 и позже.

  • Объявление

    Swift

    var kAnyComponentType: Int { get } var kAnyComponentSubType: Int { get } var kAnyComponentManufacturer: Int { get } var kAnyComponentFlagsMask: Int { get }

    Objective C

    enum { kAnyComponentType = 0, kAnyComponentSubType = 0, kAnyComponentManufacturer = 0, kAnyComponentFlagsMask = 0 };

    Константы

    • kAnyComponentType

      kAnyComponentType

      Доступный в OS X v10.0 и позже.

    • kAnyComponentSubType

      kAnyComponentSubType

      Доступный в OS X v10.0 и позже.

    • kAnyComponentManufacturer

      kAnyComponentManufacturer

      Доступный в OS X v10.0 и позже.

    • kAnyComponentFlagsMask

      kAnyComponentFlagsMask

      Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    var kAppleManufacturer: Int { get } var kComponentResourceType: Int { get } var kComponentAliasResourceType: Int { get }

    Objective C

    enum { kAppleManufacturer = 'appl', kComponentResourceType = 'thng', kComponentAliasResourceType = 'thga' };

    Константы

    • kAppleManufacturer

      kAppleManufacturer

      Доступный в OS X v10.0 и позже.

    • kComponentResourceType

      kComponentResourceType

      Доступный в OS X v10.0 и позже.

    • kComponentAliasResourceType

      kComponentAliasResourceType

      Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    var mpWorkFlagDoWork: Int { get } var mpWorkFlagDoCompletion: Int { get } var mpWorkFlagCopyWorkBlock: Int { get } var mpWorkFlagDontBlock: Int { get } var mpWorkFlagGetProcessorCount: Int { get } var mpWorkFlagGetIsRunning: Int { get }

    Objective C

    enum { mpWorkFlagDoWork = (1 << 0), mpWorkFlagDoCompletion = (1 << 1), mpWorkFlagCopyWorkBlock = (1 << 2), mpWorkFlagDontBlock = (1 << 3), mpWorkFlagGetProcessorCount = (1 << 4), mpWorkFlagGetIsRunning = (1 << 6) };

    Константы

    • mpWorkFlagDoWork

      mpWorkFlagDoWork

      Доступный в OS X v10.0 и позже.

    • mpWorkFlagDoCompletion

      mpWorkFlagDoCompletion

      Доступный в OS X v10.0 и позже.

    • mpWorkFlagCopyWorkBlock

      mpWorkFlagCopyWorkBlock

      Доступный в OS X v10.0 и позже.

    • mpWorkFlagDontBlock

      mpWorkFlagDontBlock

      Доступный в OS X v10.0 и позже.

    • mpWorkFlagGetProcessorCount

      mpWorkFlagGetProcessorCount

      Доступный в OS X v10.0 и позже.

    • mpWorkFlagGetIsRunning

      mpWorkFlagGetIsRunning

      Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    var platform68k: Int { get } var platformPowerPC: Int { get } var platformInterpreted: Int { get } var platformWin32: Int { get } var platformPowerPCNativeEntryPoint: Int { get } var platformIA32NativeEntryPoint: Int { get }

    Objective C

    enum { platform68k = 1, platformPowerPC = 2, platformInterpreted = 3, platformWin32 = 4, platformPowerPCNativeEntryPoint = 5, platformIA32NativeEntryPoint = 6 };

    Константы

    • platform68k

      platform68k

      Доступный в OS X v10.0 и позже.

    • platformPowerPC

      platformPowerPC

      Доступный в OS X v10.0 и позже.

    • platformInterpreted

      platformInterpreted

      Доступный в OS X v10.0 и позже.

    • platformWin32

      platformWin32

      Доступный в OS X v10.0 и позже.

    • platformPowerPCNativeEntryPoint

      platformPowerPCNativeEntryPoint

      Доступный в OS X v10.0 и позже.

    • platformIA32NativeEntryPoint

      platformIA32NativeEntryPoint

      Доступный в OS X v10.3 и позже.

    Обсуждение

  • Объявление

    Swift

    var platformIRIXmips: Int { get } var platformSunOSsparc: Int { get } var platformSunOSintel: Int { get } var platformLinuxppc: Int { get } var platformLinuxintel: Int { get } var platformAIXppc: Int { get } var platformNeXTIntel: Int { get } var platformNeXTppc: Int { get } var platformNeXTsparc: Int { get } var platformNeXT68k: Int { get } var platformMacOSx86: Int { get }

    Objective C

    enum { platformIRIXmips = 1000, platformSunOSsparc = 1100, platformSunOSintel = 1101, platformLinuxppc = 1200, platformLinuxintel = 1201, platformAIXppc = 1300, platformNeXTIntel = 1400, platformNeXTppc = 1401, platformNeXTsparc = 1402, platformNeXT68k = 1403, platformMacOSx86 = 1500 };

    Константы

    • platformIRIXmips

      platformIRIXmips

      Доступный в OS X v10.0 и позже.

    • platformSunOSsparc

      platformSunOSsparc

      Доступный в OS X v10.0 и позже.

    • platformSunOSintel

      platformSunOSintel

      Доступный в OS X v10.0 и позже.

    • platformLinuxppc

      platformLinuxppc

      Доступный в OS X v10.0 и позже.

    • platformLinuxintel

      platformLinuxintel

      Доступный в OS X v10.0 и позже.

    • platformAIXppc

      platformAIXppc

      Доступный в OS X v10.0 и позже.

    • platformNeXTIntel

      platformNeXTIntel

      Доступный в OS X v10.0 и позже.

    • platformNeXTppc

      platformNeXTppc

      Доступный в OS X v10.0 и позже.

    • platformNeXTsparc

      platformNeXTsparc

      Доступный в OS X v10.0 и позже.

    • platformNeXT68k

      platformNeXT68k

      Доступный в OS X v10.0 и позже.

    • platformMacOSx86

      platformMacOSx86

      Доступный в OS X v10.0 и позже.

  • Объявление

    Swift

    var registerComponentGlobal: Int { get } var registerComponentNoDuplicates: Int { get } var registerComponentAfterExisting: Int { get } var registerComponentAliasesOnly: Int { get }

    Objective C

    enum { registerComponentGlobal = 1, registerComponentNoDuplicates = 2, registerComponentAfterExisting = 4, registerComponentAliasesOnly = 8 };

    Константы

    • registerComponentGlobal

      registerComponentGlobal

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

      Доступный в OS X v10.0 и позже.

    • registerComponentNoDuplicates

      registerComponentNoDuplicates

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

      Доступный в OS X v10.0 и позже.

    • registerComponentAfterExisting

      registerComponentAfterExisting

      Укажите этот флаг, чтобы указать, что этот компонент должен быть зарегистрирован после всех других компонентов с тем же типом компонента. Обычно компоненты регистрируются перед другими с идентичными описаниями; указание этого флага переопределяет то поведение.

      Доступный в OS X v10.0 и позже.

    • registerComponentAliasesOnly

      registerComponentAliasesOnly

      Доступный в OS X v10.0 и позже.

    Обсуждение

    Функции RegisterComponent , RegisterComponentResource , и RegisterComponentResourceFile используйте эти флаги в global параметр.

  • Объявление

    Swift

    var kComponentOpenSelect: Int { get } var kComponentCloseSelect: Int { get } var kComponentCanDoSelect: Int { get } var kComponentVersionSelect: Int { get } var kComponentRegisterSelect: Int { get } var kComponentTargetSelect: Int { get } var kComponentUnregisterSelect: Int { get } var kComponentGetMPWorkFunctionSelect: Int { get } var kComponentExecuteWiredActionSelect: Int { get } var kComponentGetPublicResourceSelect: Int { get }

    Objective C

    enum { kComponentOpenSelect = -1, kComponentCloseSelect = -2, kComponentCanDoSelect = -3, kComponentVersionSelect = -4, kComponentRegisterSelect = -5, kComponentTargetSelect = -6, kComponentUnregisterSelect = -7, kComponentGetMPWorkFunctionSelect = -8, kComponentExecuteWiredActionSelect = -9, kComponentGetPublicResourceSelect = -10 };

    Константы

    • kComponentOpenSelect

      kComponentOpenSelect

      Запрос для открытия соединения. Ваш компонент должен реагировать на этот код запроса.

      Доступный в OS X v10.0 и позже.

    • kComponentCloseSelect

      kComponentCloseSelect

      Запрос для закрытия соединения. Ваш компонент должен реагировать на этот код запроса.

      Доступный в OS X v10.0 и позже.

    • kComponentCanDoSelect

      kComponentCanDoSelect

      Запрос, чтобы определить, поддерживает ли Ваш компонент определенный запрос. Ваш компонент должен реагировать на этот код запроса

      Доступный в OS X v10.0 и позже.

    • kComponentVersionSelect

      kComponentVersionSelect

      Запрос для возврата номера версии компонента. Ваш компонент должен реагировать на этот код запроса.

      Доступный в OS X v10.0 и позже.

    • kComponentRegisterSelect

      kComponentRegisterSelect

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

      Доступный в OS X v10.0 и позже.

    • kComponentTargetSelect

      kComponentTargetSelect

      Запрос для вызова другого компонента каждый раз, когда компонент вызвал бы себя. Ваш компонент может или может не реагировать на этот код запроса.

      Доступный в OS X v10.0 и позже.

    • kComponentUnregisterSelect

      kComponentUnregisterSelect

      Запрос для выполнения любых операций, необходимых в результате компонента, являющегося незарегистрированным. Ваш компонент может или может не реагировать на этот код запроса

      Доступный в OS X v10.0 и позже.

    • kComponentGetMPWorkFunctionSelect

      kComponentGetMPWorkFunctionSelect

      Доступный в OS X v10.0 и позже.

    • kComponentExecuteWiredActionSelect

      kComponentExecuteWiredActionSelect

      Доступный в OS X v10.0 и позже.

    • kComponentGetPublicResourceSelect

      kComponentGetPublicResourceSelect

      Доступный в OS X v10.0 и позже.

    Обсуждение

    Эти значения используются в ComponentParameters структура для указания типа запроса к компоненту. Apple определил эти коды запроса:

  • Объявление

    Swift

    var defaultComponentIdentical: Int { get } var defaultComponentAnyFlags: Int { get } var defaultComponentAnyManufacturer: Int { get } var defaultComponentAnySubType: Int { get } var defaultComponentAnyFlagsAnyManufacturer: Int { get } var defaultComponentAnyFlagsAnyManufacturerAnySubType: Int { get }

    Objective C

    enum { defaultComponentIdentical = 0, defaultComponentAnyFlags = 1, defaultComponentAnyManufacturer = 2, defaultComponentAnySubType = 4, defaultComponentAnyFlagsAnyManufacturer = (defaultComponentAnyFlags + defaultComponentAnyManufacturer ), defaultComponentAnyFlagsAnyManufacturerAnySubType = (defaultComponentAnyFlags + defaultComponentAnyManufacturer + defaultComponentAnySubType ) };

    Константы

    • defaultComponentIdentical

      defaultComponentIdentical

      Менеджер компонентов помещает компонент, указанный в вызов к SetDefaultComponent перед всеми другими компонентами, имеющими то же описание компонента.

      Доступный в OS X v10.0 и позже.

    • defaultComponentAnyFlags

      defaultComponentAnyFlags

      Менеджер компонентов игнорирует значение componentFlags поле во время работы переупорядочивания.

      Доступный в OS X v10.0 и позже.

    • defaultComponentAnyManufacturer

      defaultComponentAnyManufacturer

      Менеджер компонентов игнорирует значение componentManufacturer поле во время работы переупорядочивания.

      Доступный в OS X v10.0 и позже.

    • defaultComponentAnySubType

      defaultComponentAnySubType

      Менеджер компонентов игнорирует значение componentSubType поле во время работы переупорядочивания.

      Доступный в OS X v10.0 и позже.

    • defaultComponentAnyFlagsAnyManufacturer

      defaultComponentAnyFlagsAnyManufacturer

      Доступный в OS X v10.0 и позже.

    • defaultComponentAnyFlagsAnyManufacturerAnySubType

      defaultComponentAnyFlagsAnyManufacturerAnySubType

      Доступный в OS X v10.0 и позже.

    Обсуждение

    SetDefaultComponent функционируйте использует эти значения в flags параметр для управления, который поля описания компонента Менеджер компонентов исследуют во время работы переупорядочивания.

Коды результата

Коды результата, определенные Менеджером компонентов, упоминаются ниже.

  • Недопустимый компонент ID.

    Значение

    - 3000

    Описание

    Недопустимый компонент ID.

    Доступный в OS X v10.0 и позже.

  • Этот компонент имеет открытые соединения.

    Значение

    - 3001

    Описание

    Этот компонент имеет открытые соединения.

    Доступный в OS X v10.0 и позже.

  • Этот компонент не был получен.

    Значение

    - 3002

    Описание

    Этот компонент не был получен.

    Доступный в OS X v10.0 и позже.

  • Значение

    - 3003

    Описание

    Доступный в OS X v10.0 и позже.

  • Значение

    - 3004

    Описание

    Доступный в OS X v10.0 и позже.

  • Значение

    - 3005

    Описание

    Доступный в OS X v10.0 и позже.

  • Компонент не поддерживает указанный код запроса.

    Значение

    0x80008002

    Описание

    Компонент не поддерживает указанный код запроса.

    Доступный в OS X v10.0 и позже.

  • Недопустимый компонент передал Менеджеру компонентов.

    Значение

    0x80008001

    Описание

    Недопустимый компонент передал Менеджеру компонентов.

    Доступный в OS X v10.0 и позже.

Константы гештальта

Можно проверить на версию и информацию о доступности функции при помощи селекторов Менеджера компонентов, определенных в менеджере по Гештальту. Для получения дополнительной информации посмотрите менеджера по Гештальту Референса.