compiler.build.COMComponentOptions

Опции для создания COM- компонентов

Описание

пример

opts = compiler.build.COMComponentOptions(Files) создает COMComponentOptions объект с использованием MATLAB® функции, заданные Files. Используйте COMComponentOptions объект как вход в compiler.build.comComponent функция.

пример

opts = compiler.build.COMComponentOptions(Files,Name,Value) создает COMComponentOptions объект с опциями, заданными с помощью одного или нескольких аргументов в виде имя-значение. Опции включают имя компонента, выходную директорию и дополнительные файлы для включения.

пример

opts = compiler.build.COMComponentOptions(ClassMap) создает COMComponentOptions объект с сопоставлением классов, заданным с помощью container.Map ClassMap объекта.

пример

opts = compiler.build.COMComponentOptions(ClassMap,Name,Value) создает COMComponentOptions объект с сопоставлением классов, заданным с помощью ClassMap и опции, заданные с помощью одного или нескольких аргументов в виде имя-значение.

Примеры

свернуть все

Создайте COMComponentOptions объект в Windows® система, использующая входной параметр файла.

В данном примере используйте файл magicsquare.m расположен в matlabroot\ extern\примеры\компилятор.

appFile = fullfile(matlabroot,'extern','examples','compiler','magicsquare.m');
opts = compiler.build.COMComponentOptions(appFile)
opts =

  COMComponentOptions with properties:

            ClassMap: [1×1 containers.Map]
          ComponentName: 'magicsquare'
       ComponentVersion: '1.0.0.0'
           EmbedArchive: on
        AdditionalFiles: {}
    AutoDetectDataFiles: on
                Verbose: off
              OutputDir: '.\magicsquarecomComponent'

   Class Map Information
       magicsquareClass: {'C:\Program Files\MATLAB\R2021a\extern\examples\compiler\magicsquare.m'}

Можно изменять значения свойств существующей COMComponentOptions объект с использованием записи через точку. Для примера включите подробные выходы.

opts.Verbose = 'on'
opts =

  COMComponentOptions with properties:

            ClassMap: [1×1 containers.Map]
          ComponentName: 'magicsquare'
       ComponentVersion: '1.0.0.0'
           EmbedArchive: on
        AdditionalFiles: {}
    AutoDetectDataFiles: on
                Verbose: on
              OutputDir: 'D:\Documents\MATLAB\work\COMComponent'

   Class Map Information
       magicsquareClass: {'C:\Program Files\MATLAB\R2021a\extern\examples\compiler\magicsquare.m'}

Используйте COMComponentOptions объект как вход в compiler.build.comComponent функция для создания COM- компонента.

buildResults = compiler.build.comComponent(opts);

Создайте COMComponentOptions объект в системе Windows и настройте его с помощью аргументов имя-значение.

В данном примере используйте файл magicsquare.m расположен в matlabroot\ extern\примеры\компилятор. Используйте аргументы имя-значение, чтобы задать выход директории и отключить автоматическое обнаружение файлов данных.

opts = compiler.build.COMComponentOptions('magicsquare.m',...
    'OutputDir','D:\Documents\MATLAB\work\MagicCOMComponent',...
    'AutoDetectDataFiles','off')
opts =

  COMComponentOptions with properties:

            ClassMap: [1×1 containers.Map]
          ComponentName: 'magicsquare'
       ComponentVersion: '1.0.0.0'
           EmbedArchive: on
        AdditionalFiles: {}
    AutoDetectDataFiles: off
                Verbose: off
              OutputDir: 'D:\Documents\MATLAB\work\MagicCOMComponent'

   Class Map Information
       magicsquareClass: {'C:\Program Files\MATLAB\R2021a\extern\examples\compiler\magicsquare.m'}

Можно изменять значения свойств существующей COMComponentOptions объект с использованием записи через точку. Для примера включите подробные выходы.

opts.Verbose = 'on'
opts =

  COMComponentOptions with properties:

            ClassMap: [1×1 containers.Map]
          ComponentName: 'magicsquare'
       ComponentVersion: '1.0.0.0'
           EmbedArchive: on
        AdditionalFiles: {}
    AutoDetectDataFiles: off
                Verbose: on
              OutputDir: 'D:\Documents\MATLAB\work\MagicCOMComponent'

   Class Map Information
       magicsquareClass: {'C:\Program Files\MATLAB\R2021a\extern\examples\compiler\magicsquare.m'}

Используйте COMComponentOptions объект как вход в compiler.build.comComponent функция.

buildResults = compiler.build.comComponent(opts);

Создайте COMComponentOptions объект в системе Windows, использующий карту классов.

Создайте containers.Map объект, ключи которого являются именами классов и значения которого являются файлами функций MATLAB.

cmap = containers.Map;
cmap('Class1') = {'exampleFcn1.m','exampleFcn2.m'};
cmap('Class2') = {'exampleFcn3.m','exampleFcn4.m'};

Создайте COMComponentOptions объект, использующий карту классов cmap.

opts = compiler.build.COMComponentOptions(cmap)
opts =

  COMComponentOptions with properties:

            ClassMap: [2×1 containers.Map]
          ComponentName: 'exampleFcn1'
       ComponentVersion: '1.0.0.0'
           EmbedArchive: on
        AdditionalFiles: {}
    AutoDetectDataFiles: on
                Verbose: off
              OutputDir: '.\exampleFcn1comComponent'

   Class Map Information
                 Class1: {2×1 cell}
                 Class2: {2×1 cell}

Чтобы настроить COM- компонента, создайте новую COMComponentOptions объект с использованием аргументов имя-значение или изменить существующий объект с помощью записи через точку. Для примера задайте выход директории, включите подробный выход и отключите автоматическое обнаружение файлов данных.

opts = compiler.build.COMComponentOptions(cmap,...
    'OutputDir','D:\Documents\MATLAB\work\MagicCOMComponent',...
    'Verbose','On');
opts.AutoDetectDataFiles = 'off'
opts =

  COMComponentOptions with properties:

            ClassMap: [2×1 containers.Map]
          ComponentName: 'exampleFcn1'
       ComponentVersion: '1.0.0.0'
           EmbedArchive: on
        AdditionalFiles: {}
    AutoDetectDataFiles: off
                Verbose: on
              OutputDir: 'D:\Documents\MATLAB\work\MagicCOMComponent'

   Class Map Information
                 Class1: {2×1 cell}
                 Class2: {2×1 cell}

Используйте COMComponentOptions объект как вход в compiler.build.comComponent функция для создания COM- компонента.

buildResults = compiler.build.comComponent(opts);

Входные параметры

свернуть все

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

Пример: ["myfunc1.m","myfunc2.m"]

Типы данных: char | string | cell

Карта классов, заданная как containers.Map объект. Ключи map являются именами классов, и каждое значение является набором файлов, сопоставленных с соответствующим классом. Файлы должны иметь .m расширение.

Пример: cmap

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'EmbedArchive','on'

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

Пример: 'AdditionalFiles',["myvars.mat","data.txt"]

Типы данных: char | string | cell

Флаг для автоматического включения файлов данных, заданный как 'on' или 'off', или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState.

  • Если вы задаете это свойство равным 'on', затем файлы данных, которые вы предоставляете в качестве входов для определенных функций (таких как load и fopen) автоматически включаются в компонент.

  • Если вы задаете это свойство равным 'off', затем необходимо добавить файлы данных к компоненту с помощью AdditionalFiles свойство.

Пример: 'AutoDetectDataFiles','off'

Типы данных: logical

Имя класса, заданное как вектор символов или строковый скаляр. Вы не можете задать эту опцию, если используете ClassMap вход. Имена классов должны совпадать с требованиями к наименованию COM-классов.

Значение по умолчанию является именем первого файла, перечисленного в Files аргумент, добавленный с помощью Class.

Пример: 'ClassName','magicsquareClass'

Типы данных: char | string

Имя COM- компонента, заданное как вектор символов или строковый скаляр. Значение действует как идентификатор программы, введенный в реестр Windows. Имя по умолчанию сгенерированного компонента является первой записью Files аргумент. Имя должно начинаться с буквы и содержать только буквенные символы и точки.

Пример: 'ComponentName','mycomponent'

Типы данных: char | string

Версия компонента, заданная как вектор символов или строковый скаляр. Для получения информации об управлении версиями с помощью MATLAB Compiler SDK™, смотрите Versioning.

Пример: 'ComponentVersion','4.0'

Типы данных: char | string

Флаг для встраивания архива сборки, заданный как 'on' или 'off', или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState.

  • Если вы задаете это свойство равным 'on'затем функция встраивает архив сборки в COM- компонента.

  • Если вы задаете это свойство равным 'off'затем функция генерирует архив сборки как отдельный файл.

Пример: 'EmbedArchive','off'

Типы данных: logical

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

Имя папки сборки по умолчанию является именем компонента, добавленным с помощью comComponent.

Пример: 'OutputDir','D:\Documents\MATLAB\work\mycomponentcomComponent'

Типы данных: char | string

Флаг для управления подробностями сборки, заданный как 'on' или 'off', или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState.

  • Если вы задаете это свойство равным 'on', затем в командном окне MATLAB отображается информация о прогрессе, указывающая на выход компилятора в процессе сборки.

  • Если вы задаете это свойство равным 'off'затем командное окно не отображает информацию о прогрессе.

Пример: 'Verbose','on'

Типы данных: logical

Выходные аргументы

свернуть все

COM компонента сборка опций, возвращенная как COMComponentOptions объект.

Введенный в R2021a